Project settings are defined in project.inlang/settings.json. This document covers all available settings.

Core Settings

type ProjectSettings = {
  $schema?: string;
  baseLocale: string;
  locales: string[];
  modules?: string[];
  telemetry?: "off";
  experimental?: Record<string, true>;
}

baseLocale

Required. The base locale of your project. All other translations are derived from this locale.

{
  "baseLocale": "en"
}

Must be a valid BCP-47 language tag.

locales

Required. All locales available in your project, including the base locale.

{
  "baseLocale": "en",
  "locales": ["en", "de", "fr", "es"]
}
  • Must include baseLocale
  • Each locale must be a valid BCP-47 language tag
  • Duplicates are not allowed

modules

URIs to plugin modules. Plugins extend inlang with import/export capabilities for different i18n formats.

{
  "modules": [
    "https://cdn.jsdelivr.net/npm/@inlang/plugin-i18next@3/dist/index.js",
    "./local-plugin.js"
  ]
}
  • Must be valid URIs (RFC 3986)
  • Must end with .js
  • Can be absolute (CDN) or relative paths

telemetry

Controls anonymous usage telemetry. Omit for default behavior, or set to "off" to disable.

{
  "telemetry": "off"
}

experimental

Enable experimental features. Keys are feature names, values must be true.

{
  "experimental": {
    "newFeature": true
  }
}

Plugin Settings

Plugins define their own settings schemas. Plugin settings use the prefix plugin.<plugin-id>.

{
  "plugin.inlang.i18next": {
    "pathPattern": "./locales/{locale}.json"
  }
}

See each plugin's marketplace page for available settings.

Example

{
  "$schema": "https://inlang.com/schema/project-settings",
  "baseLocale": "en",
  "locales": ["en", "de", "fr", "es"],
  "modules": [
    "https://cdn.jsdelivr.net/npm/@inlang/plugin-i18next@3/dist/index.js",
    "https://cdn.jsdelivr.net/npm/@inlang/plugin-t-function-matcher@3/dist/index.js"
  ],
  "plugin.inlang.i18next": {
    "pathPattern": {
      "common": "./locales/{locale}/common.json",
      "errors": "./locales/{locale}/errors.json"
    },
    "variableReferencePattern": ["{{", "}}"]
  }
}

Deprecated Settings

These settings are deprecated and will be removed in SDK v3:

SettingReplacement
sourceLanguageTagUse baseLocale
languageTagsUse locales
{languageTag} in pathsUse {locale}

Next Steps