Der Inhalt dieser Seite wurde mit einer KI übersetzt.
Den englischen Originaltext ansehenIntlayer Konfigurationsdokumentation
Übersicht
Intlayer-Konfigurationsdateien ermöglichen die Anpassung verschiedener Aspekte des Plugins, wie Internationalisierung, Middleware und Inhaltsverwaltung. Dieses Dokument bietet eine detaillierte Beschreibung jeder Eigenschaft in der Konfiguration.
Unterstützung für Konfigurationsdateien
Intlayer akzeptiert die Konfigurationsdateiformate JSON, JS, MJS und TS:
- intlayer.config.ts
- intlayer.config.js
- intlayer.config.json
- intlayer.config.cjs
- intlayer.config.mjs
- .intlayerrc
Beispiel für eine Konfigurationsdatei
import { Locales, type IntlayerConfig } from "intlayer";const config: IntlayerConfig = { internationalization: { locales: [Locales.ENGLISH], }, content: { typesDir: "content/types", }, middleware: { noPrefix: false, },};export default config;
Konfigurationsreferenz
Die folgenden Abschnitte beschreiben die verschiedenen Konfigurationseinstellungen, die für Intlayer verfügbar sind.
Internationalisierungskonfiguration
Definiert Einstellungen im Zusammenhang mit der Internationalisierung, einschließlich verfügbarer Sprachen und der Standardsprache der Anwendung.
Eigenschaften
locales:
- Typ: string[]
- Standard: ['en']
- Beschreibung: Die Liste der unterstützten Sprachen in der Anwendung.
- Beispiel: ['en', 'fr', 'es']
- requiredLocales:
- Typ: string[]
- Standard: []
- Beschreibung: Die Liste der erforderlichen Sprachen in der Anwendung.
- Beispiel: []
- Hinweis: Wenn leer, sind im strict-Modus alle Sprachen erforderlich.
- Hinweis: Stellen Sie sicher, dass erforderliche Sprachen auch im Feld locales definiert sind.
strictMode:
- Typ: string
- Standard: inclusive
- Beschreibung: Stellt sicher, dass internationalisierte Inhalte mit TypeScript stark implementiert werden.
- Hinweis: Wenn auf "strict" gesetzt, erfordert die Übersetzungsfunktion t, dass jede deklarierte Sprache definiert ist. Wenn eine Sprache fehlt oder nicht in Ihrer Konfiguration deklariert ist, wird ein Fehler ausgelöst.
- Hinweis: Wenn auf "inclusive" gesetzt, erfordert die Übersetzungsfunktion t, dass jede deklarierte Sprache definiert ist. Wenn eine Sprache fehlt, wird eine Warnung ausgegeben. Es wird jedoch akzeptiert, wenn eine Sprache nicht in Ihrer Konfiguration deklariert ist, aber existiert.
- Hinweis: Wenn auf "loose" gesetzt, akzeptiert die Übersetzungsfunktion t jede vorhandene Sprache.
defaultLocale:
- Typ: string
- Standard: 'en'
- Beschreibung: Die Standardsprache, die als Fallback verwendet wird, wenn die angeforderte Sprache nicht gefunden wird.
- Beispiel: 'en'
- Hinweis: Dies wird verwendet, um die Sprache zu bestimmen, wenn keine in der URL, im Cookie oder im Header angegeben ist.
Editor-Konfiguration
Definiert Einstellungen im Zusammenhang mit dem integrierten Editor, einschließlich Serverport und Aktivierungsstatus.
Eigenschaften
applicationURL:
- Typ: string
- Standard: http://localhost:3000
- Beschreibung: Die URL der Anwendung. Wird verwendet, um den Ursprung des Editors aus Sicherheitsgründen einzuschränken.
- Beispiel:
- 'http://localhost:3000'
- 'https://example.com'
- process.env.INTLAYER_EDITOR_URL
- Hinweis: Die URL der Anwendung. Wird verwendet, um den Ursprung des Editors aus Sicherheitsgründen einzuschränken. Wenn auf '*' gesetzt, ist der Editor von jedem Ursprung aus zugänglich.
port:
- Typ: number
- Standard: 8000
- Beschreibung: Der Port, der vom visuellen Editor-Server verwendet wird.
editorURL:
- Typ: string
- Standard: 'http://localhost:8000'
- Beschreibung: Die URL des Editor-Servers. Wird verwendet, um die Ursprünge einzuschränken, die mit der Anwendung interagieren können.
- 'http://localhost:3000'
- 'https://example.com'
- process.env.INTLAYER_EDITOR_URL
- Hinweis: Die URL des Editor-Servers, die von der Anwendung erreicht werden kann. Wird verwendet, um die Ursprünge einzuschränken, die mit der Anwendung interagieren können. Wenn auf '*' gesetzt, ist der Editor von jedem Ursprung aus zugänglich. Sollte gesetzt werden, wenn der Port geändert wird oder wenn der Editor auf einer anderen Domain gehostet wird.
cmsURL:
- Typ: string
- Standard: 'https://intlayer.org'
- Beschreibung: Die URL des Intlayer CMS.
- Beispiel: 'https://intlayer.org'
- Hinweis: Die URL des Intlayer CMS.
backendURL:
- Typ: string
- Standard: https://back.intlayer.org
- Beschreibung: Die URL des Backend-Servers.
- Beispiel: http://localhost:4000
enabled:
- Typ: boolean
- Standard: true
- Beschreibung: Gibt an, ob die Anwendung mit dem visuellen Editor interagiert.
- Beispiel: process.env.NODE_ENV !== 'production'
- Hinweis: Wenn true, kann der Editor mit der Anwendung interagieren. Wenn false, kann der Editor nicht mit der Anwendung interagieren. In jedem Fall kann der Editor nur durch den visuellen Editor aktiviert werden. Das Deaktivieren des Editors für bestimmte Umgebungen ist eine Möglichkeit, die Sicherheit zu gewährleisten.
clientId:
- Typ: string | undefined
- Standard: undefined
- Beschreibung: clientId und clientSecret ermöglichen es den Intlayer-Paketen, sich mit dem Backend über oAuth2-Authentifizierung zu authentifizieren. Ein Zugriffstoken wird verwendet, um den Benutzer zu authentifizieren, der mit dem Projekt verbunden ist. Um ein Zugriffstoken zu erhalten, gehen Sie zu /dashboard/project und erstellen Sie ein Konto.
- Beispiel: true
- Hinweis: Wichtig: Die clientId und clientSecret sollten geheim gehalten und nicht öffentlich geteilt werden. Bitte stellen Sie sicher, dass sie an einem sicheren Ort aufbewahrt werden, z. B. in Umgebungsvariablen.
clientSecret:
- Typ: string | undefined
- Standard: undefined
- Beschreibung: clientId und clientSecret ermöglichen es den Intlayer-Paketen, sich mit dem Backend über oAuth2-Authentifizierung zu authentifizieren. Ein Zugriffstoken wird verwendet, um den Benutzer zu authentifizieren, der mit dem Projekt verbunden ist. Um ein Zugriffstoken zu erhalten, gehen Sie zu /dashboard/project und erstellen Sie ein Konto.
- Beispiel: true
- Hinweis: Wichtig: Die clientId und clientSecret sollten geheim gehalten und nicht öffentlich geteilt werden. Bitte stellen Sie sicher, dass sie an einem sicheren Ort aufbewahrt werden, z. B. in Umgebungsvariablen.
hotReload:
- Typ: boolean
- Standard: false
- Beschreibung: Gibt an, ob die Anwendung die Sprachkonfigurationen bei einer Änderung automatisch neu laden soll.
- Beispiel: true
- Hinweis: Wenn beispielsweise ein neues Wörterbuch hinzugefügt oder aktualisiert wird, aktualisiert die Anwendung den Inhalt, der auf der Seite angezeigt wird.
- Hinweis: Da das Hot-Reloading eine kontinuierliche Verbindung zum Server erfordert, ist es nur für Kunden des Enterprise-Plans verfügbar.
dictionaryPriorityStrategy:
- Typ: string
- Standard: 'local_first'
- Beschreibung: Die Strategie zur Priorisierung von Wörterbüchern, wenn sowohl lokale als auch entfernte Wörterbücher vorhanden sind. Wenn auf 'distant_first' gesetzt, priorisiert die Anwendung entfernte Wörterbücher gegenüber lokalen Wörterbüchern. Wenn auf 'local_first' gesetzt, priorisiert die Anwendung lokale Wörterbücher gegenüber entfernten Wörterbüchern.
- Beispiel: 'distant_first'
Middleware-Konfiguration
Einstellungen, die das Verhalten der Middleware steuern, einschließlich der Handhabung von Cookies, Headern und URL-Präfixen für die Sprachverwaltung.
Eigenschaften
headerName:
- Typ: string
- Standard: 'x-intlayer-locale'
- Beschreibung: Der Name des HTTP-Headers, der zur Bestimmung der Sprache verwendet wird.
- Beispiel: 'x-custom-locale'
Hinweis: Dies ist nützlich für die API-basierte Sprachbestimmung.
- Typ: string
- Standard: 'intlayer-locale'
- Beschreibung: Der Name des Cookies, das verwendet wird, um die Spracheinstellung zu speichern.
- Beispiel: 'custom-locale'
- Hinweis: Wird verwendet, um die Spracheinstellung über Sitzungen hinweg beizubehalten.
prefixDefault:
- Typ: boolean
- Standard: true
- Beschreibung: Ob die Standardsprache in der URL enthalten sein soll.
- Beispiel: false
- Hinweis: Wenn false, enthalten URLs für die Standardsprache kein Sprachpräfix.
basePath:
- Typ: string
- Standard: ''
- Beschreibung: Der Basis-Pfad für die Anwendungs-URLs.
- Beispiel: '/my-app'
- Hinweis: Dies beeinflusst, wie URLs für die Anwendung erstellt werden.
serverSetCookie:
- Typ: string
- Standard: 'always'
- Beschreibung: Regel zum Setzen des Sprach-Cookies auf dem Server.
- Optionen: 'always', 'never'
- Beispiel: 'never'
- Hinweis: Steuert, ob das Sprach-Cookie bei jeder Anfrage oder nie gesetzt wird.
noPrefix:
- Typ: boolean
- Standard: false
- Beschreibung: Ob das Sprachpräfix in URLs weggelassen werden soll.
- Beispiel: true
- Hinweis: Wenn true, enthalten URLs keine Sprachinformationen.
Inhaltskonfiguration
Einstellungen im Zusammenhang mit der Inhaltsverwaltung innerhalb der Anwendung, einschließlich Verzeichnisnamen, Dateierweiterungen und abgeleiteter Konfigurationen.
Eigenschaften
watch:
- Typ: boolean
- Standard: process.env.NODE_ENV === 'development'
- Beschreibung: Gibt an, ob Intlayer Änderungen in den Inhaltsdeklarationsdateien der App überwachen soll, um die zugehörigen Wörterbücher neu zu erstellen.
fileExtensions:
- Typ: string[]
- Standard: ['.content.ts', '.content.js', '.content.cjs', '.content.mjs', '.content.json', '.content.tsx', '.content.jsx']
- Beschreibung: Dateierweiterungen, nach denen beim Erstellen von Wörterbüchern gesucht wird.
- Beispiel: ['.data.ts', '.data.js', '.data.json']
- Hinweis: Die Anpassung der Dateierweiterungen kann helfen, Konflikte zu vermeiden.
baseDir:
- Typ: string
- Standard: process.cwd()
- Beschreibung: Das Basisverzeichnis für das Projekt.
- Beispiel: '/path/to/project'
- Hinweis: Wird verwendet, um alle Intlayer-bezogenen Verzeichnisse aufzulösen.
dictionaryOutput:
- Typ: string[]
- Standard: ['intlayer']
- Beschreibung: Der Typ der Wörterbuchausgabe, z. B. 'intlayer' oder 'i18next'.
contentDir:
- Typ: string[]
- Standard: ['src']
- Beschreibung: Der Verzeichnispfad, in dem Inhalte gespeichert werden.
dictionariesDir:
- Typ: string
- Standard: '.intlayer/dictionaries'
- Beschreibung: Der Verzeichnispfad für die Speicherung von Zwischen- oder Ausgabedaten.
moduleAugmentationDir:
- Typ: string
- Standard: '.intlayer/types'
- Beschreibung: Verzeichnis für Modulerweiterungen, um bessere IDE-Vorschläge und Typprüfungen zu ermöglichen.
- Beispiel: 'intlayer-types'
- Hinweis: Stellen Sie sicher, dass dieses Verzeichnis in tsconfig.json enthalten ist.
unmergedDictionariesDir:
- Typ: string
- Standard: '.intlayer/unmerged_dictionary'
- Beschreibung: Das Verzeichnis zur Speicherung nicht zusammengeführter Wörterbücher.
- Beispiel: 'translations'
dictionariesDir:
- Typ: string
- Standard: '.intlayer/dictionary'
- Beschreibung: Das Verzeichnis zur Speicherung von Lokalisierungswörterbüchern.
- Beispiel: 'translations'
i18nextResourcesDir:
- Typ: string
- Standard: 'i18next_dictionary'
- Beschreibung: Das Verzeichnis zur Speicherung von i18n-Wörterbüchern.
- Beispiel: 'translations'
- Hinweis: Stellen Sie sicher, dass dieses Verzeichnis für den i18next-Ausgabetyp konfiguriert ist.
typesDir:
- Typ: string
- Standard: 'types'
- Beschreibung: Das Verzeichnis zur Speicherung von Wörterbuchtypen.
- Beispiel: 'intlayer-types'
mainDir:
- Typ: string
- Standard: 'main'
- Beschreibung: Das Verzeichnis, in dem die Hauptanwendungsdateien gespeichert sind.
- Beispiel: 'intlayer-main'
excludedPath:
- Typ: string[]
- Standard: ['node_modules']
- Beschreibung: Verzeichnisse, die von der Inhaltssuche ausgeschlossen sind.
- Hinweis: Diese Einstellung wird derzeit nicht verwendet, ist jedoch für zukünftige Implementierungen geplant.
Logger-Konfiguration
Einstellungen, die den Logger steuern, einschließlich des zu verwendenden Präfixes.
Eigenschaften
mode:
- Typ: string
- Standard: default
- Beschreibung: Gibt den Modus des Loggers an.
- Optionen: default, verbose, disabled
- Beispiel: default
- Hinweis: Der Modus des Loggers. Der Modus "verbose" protokolliert mehr Informationen und kann für Debugging-Zwecke verwendet werden. Der Modus "disabled" deaktiviert den Logger.
prefix:
- Typ: string
- Standard: '[intlayer] '
- Beschreibung: Das Präfix des Loggers.
- Beispiel: '[my custom prefix] '
- Hinweis: Das Präfix des Loggers.
KI-Konfiguration
Einstellungen, die die KI-Funktionen von Intlayer steuern, einschließlich Anbieter, Modell und API-Schlüssel.
Diese Konfiguration ist optional, wenn Sie sich mit einem Zugriffsschlüssel im Intlayer Dashboard registriert haben. Intlayer verwaltet automatisch die effizienteste und kostengünstigste KI-Lösung für Ihre Anforderungen. Die Verwendung der Standardoptionen gewährleistet eine bessere langfristige Wartbarkeit, da Intlayer kontinuierlich aktualisiert wird, um die relevantesten Modelle zu verwenden.
Wenn Sie Ihren eigenen API-Schlüssel oder ein bestimmtes Modell verwenden möchten, können Sie Ihre benutzerdefinierte KI-Konfiguration definieren. Diese KI-Konfiguration wird global in Ihrer Intlayer-Umgebung verwendet. CLI-Befehle verwenden diese Einstellungen als Standardwerte für die Befehle (z. B. fill) sowie das SDK, den visuellen Editor und das CMS. Sie können diese Standardwerte für spezifische Anwendungsfälle mit Befehlsparametern überschreiben.
Intlayer unterstützt mehrere KI-Anbieter für mehr Flexibilität und Auswahl. Derzeit unterstützte Anbieter sind:
- OpenAI (Standard)
- Anthropic Claude
- Mistral AI
- DeepSeek
- Google Gemini
- Meta Llama
Eigenschaften
provider:
- Typ: string
- Standard: 'openai'
- Beschreibung: Der Anbieter, der für die KI-Funktionen von Intlayer verwendet wird.
- Optionen: 'openai', 'anthropic', 'mistral', 'deepseek', 'gemini'
- Beispiel: 'anthropic'
- Hinweis: Unterschiedliche Anbieter erfordern möglicherweise unterschiedliche API-Schlüssel und haben unterschiedliche Preismodelle.
model:
- Typ: string
- Standard: Keine
- Beschreibung: Das Modell, das für die KI-Funktionen von Intlayer verwendet wird.
- Beispiel: 'gpt-4o-2024-11-20'
- Hinweis: Das spezifische Modell variiert je nach Anbieter.
temperature:
- Typ: number
- Standard: Keine
- Beschreibung: Die Temperatur steuert die Zufälligkeit der Antworten der KI.
- Beispiel: 0.1
- Hinweis: Eine höhere Temperatur macht die KI kreativer und weniger vorhersehbar.
apiKey:
- Typ: string
- Standard: Keine
- Beschreibung: Ihr API-Schlüssel für den ausgewählten Anbieter.
- Beispiel: process.env.OPENAI_API_KEY
- Hinweis: Wichtig: API-Schlüssel sollten geheim gehalten und nicht öffentlich geteilt werden. Bitte bewahren Sie sie an einem sicheren Ort auf, z. B. in Umgebungsvariablen.
applicationContext:
- Typ: string
- Standard: Keine
- Beschreibung: Stellt dem KI-Modell zusätzlichen Kontext über Ihre Anwendung zur Verfügung, um genauere und kontextbezogenere Übersetzungen zu generieren. Dies kann Informationen über den Bereich Ihrer Anwendung, die Zielgruppe, den Ton oder spezifische Terminologie umfassen.
Wenn Sie eine Idee haben, um diese Dokumentation zu verbessern, zögern Sie bitte nicht, durch das Einreichen eines Pull-Requests auf GitHub beizutragen.
GitHub-Link zur Dokumentation