From bd11ce25794bf2aa61f70d00e233a284f2d49146 Mon Sep 17 00:00:00 2001 From: Bob Ros Date: Sat, 28 Jun 2025 02:10:37 +0200 Subject: [PATCH 01/19] add locale de-DE Germany --- web-app/src/containers/LanguageSwitcher.tsx | 1 + web-app/src/locales/de-DE/assistants.json | 32 +++ web-app/src/locales/de-DE/chat.json | 10 + web-app/src/locales/de-DE/common.json | 267 ++++++++++++++++++ web-app/src/locales/de-DE/hub.json | 31 ++ web-app/src/locales/de-DE/logs.json | 3 + web-app/src/locales/de-DE/mcp-servers.json | 43 +++ web-app/src/locales/de-DE/model-errors.json | 7 + web-app/src/locales/de-DE/provider.json | 5 + web-app/src/locales/de-DE/providers.json | 68 +++++ web-app/src/locales/de-DE/settings.json | 248 ++++++++++++++++ web-app/src/locales/de-DE/setup.json | 6 + web-app/src/locales/de-DE/system-monitor.json | 28 ++ web-app/src/locales/de-DE/tool-approval.json | 11 + web-app/src/locales/de-DE/tools.json | 10 + web-app/src/locales/de-DE/updater.json | 10 + 16 files changed, 780 insertions(+) create mode 100644 web-app/src/locales/de-DE/assistants.json create mode 100644 web-app/src/locales/de-DE/chat.json create mode 100644 web-app/src/locales/de-DE/common.json create mode 100644 web-app/src/locales/de-DE/hub.json create mode 100644 web-app/src/locales/de-DE/logs.json create mode 100644 web-app/src/locales/de-DE/mcp-servers.json create mode 100644 web-app/src/locales/de-DE/model-errors.json create mode 100644 web-app/src/locales/de-DE/provider.json create mode 100644 web-app/src/locales/de-DE/providers.json create mode 100644 web-app/src/locales/de-DE/settings.json create mode 100644 web-app/src/locales/de-DE/setup.json create mode 100644 web-app/src/locales/de-DE/system-monitor.json create mode 100644 web-app/src/locales/de-DE/tool-approval.json create mode 100644 web-app/src/locales/de-DE/tools.json create mode 100644 web-app/src/locales/de-DE/updater.json diff --git a/web-app/src/containers/LanguageSwitcher.tsx b/web-app/src/containers/LanguageSwitcher.tsx index 484a34465..21f2ddef0 100644 --- a/web-app/src/containers/LanguageSwitcher.tsx +++ b/web-app/src/containers/LanguageSwitcher.tsx @@ -14,6 +14,7 @@ const LANGUAGES = [ { value: 'vn', label: 'Tiếng Việt' }, { value: 'zh-CN', label: '简体中文' }, { value: 'zh-TW', label: '繁體中文' }, + { value: 'de-DE', label: 'Deutsch' }, ] export default function LanguageSwitcher() { diff --git a/web-app/src/locales/de-DE/assistants.json b/web-app/src/locales/de-DE/assistants.json new file mode 100644 index 000000000..02719403f --- /dev/null +++ b/web-app/src/locales/de-DE/assistants.json @@ -0,0 +1,32 @@ +{ + "title": "Assistenten", + "editAssistant": "", + "deleteAssistant": "Assistenten löschen", + "deleteConfirmation": "Assistenten löschen", + "deleteConfirmationDesc": "Bist Du sicher, daß Du diesen Assistenten löschen möchtest? Diese Aktion kann nicht rückgängig gemacht werden.", + "cancel": "Abbrechen", + "delete": "Löschen", + "addAssistant": "Assistenten hinzufügen", + "emoji": "Emoji", + "name": "Name", + "enterName": "Namen eingeben", + "description": "Beschreibung (optional)", + "enterDescription": "Beschreibung eingeben", + "instructions": "Anweisungen", + "enterInstructions": "Anweisungen eingeben", + "predefinedParameters": "Vordefinierte Parameter", + "parameters": "Parameter", + "key": "Schlüssel", + "value": "Wert", + "stringValue": "String", + "numberValue": "Number", + "booleanValue": "Boolean", + "jsonValue": "JSON", + "trueValue": "True", + "falseValue": "False", + "jsonValuePlaceholder": "JSON Value", + "save": "Speichern", + "createNew": "Neuen Assistenten anlegen", + "personality": "Persönlichkeit", + "capabilities": "Fähigkeiten" +} diff --git a/web-app/src/locales/de-DE/chat.json b/web-app/src/locales/de-DE/chat.json new file mode 100644 index 000000000..f0dfa0b82 --- /dev/null +++ b/web-app/src/locales/de-DE/chat.json @@ -0,0 +1,10 @@ +{ + "welcome": "Hi, wie geht es Dir?", + "description": "Wie kann ich Dir heute helfen?", + "status": { + "empty": "Keine Chats gefunden" + }, + "sendMessage": "Nachricht senden", + "newConversation": "Neue Konversation", + "clearHistory": "Verlauf löschen" +} diff --git a/web-app/src/locales/de-DE/common.json b/web-app/src/locales/de-DE/common.json new file mode 100644 index 000000000..524de59eb --- /dev/null +++ b/web-app/src/locales/de-DE/common.json @@ -0,0 +1,267 @@ +{ + "assistants": "Assistenten", + "hardware": "Hardware", + "mcp-servers": "Mcp Server", + "local_api_server": "Lokaler API Server", + "https_proxy": "HTTPS Proxy", + "extensions": "Erweiterungen", + "general": "Allgemein", + "settings": "Einstellungen", + "modelProviders": "Modell Anbieter", + "appearance": "Erscheinung", + "privacy": "Privatsphäre", + "keyboardShortcuts": "Shortcuts", + "newChat": "Neuer Chat", + "favorites": "Favoriten", + "recents": "Kürzlich", + "hub": "Hub", + "helpSupport": "Hilfe & Support", + "helpUsImproveJan": "Hilf uns Jan zu verbessern", + "unstarAll": "Alle De-Favorisieren", + "unstar": "De-Favorisieren", + "deleteAll": "Delete All", + "star": "Favorisieren", + "rename": "Umbenennen", + "delete": "Löschen", + "copied": "Kopiert!", + "dataFolder": "Daten Ordner", + "others": "Andere", + "language": "Sprache", + "reset": "Reset", + "search": "Suchen", + "name": "Name", + "cancel": "Abbrechen", + "create": "Anlegen", + "save": "Speichern", + "edit": "Editieren", + "copy": "Kopieren", + "back": "Zurück", + "close": "Schließen", + "next": "Nächster", + "finish": "Abschließen", + "skip": "Überspringen", + "allow": "Erlauben", + "deny": "Verbieten", + "start": "Start", + "stop": "Stop", + "preview": "Vorschau", + "compactWidth": "Kompakte Breite", + "fullWidth": "Volle Breite", + "dark": "Dunkel", + "light": "Hell", + "system": "System", + "auto": "Automatisch", + "english": "Englisch", + "medium": "Medium", + "newThread": "Neuer Thread", + "noResultsFound": "Keine Ergebnisse gefunden", + "noThreadsYet": "Keine Threads bisher", + "noThreadsYetDesc": "Starte eine neue Unterhaltung, um Ihren Threadverlauf hier anzuzeigen.", + "downloads": "Downloads", + "downloading": "Downloading", + "cancelDownload": "Download abbrechen", + "downloadCancelled": "Download wurde abgebrochen", + "downloadComplete": "Download abgeschlossen", + "thinking": "Denke nach...", + "thought": "Gedanke", + "callingTool": "Rufe Werkzeug auf", + "completed": "Abgeschlossen", + "image": "Bild", + "vision": "Vision", + "embeddings": "Einbettungen", + "tools": "Werkzeuge", + "webSearch": "Web Suche", + "reasoning": "Argumentation", + "selectAModel": "Wähle ein Modell", + "noToolsAvailable": "Keine Werkzeuge verfügbar", + "noModelsFoundFor": "Keine Modelle gefunden zu \"{{searchValue}}\"", + "customAvatar": "Benutzerdefinierter Avatar", + "editAssistant": "Assistenten bearbeiten", + "jan": "Jan", + "metadata": "Metadaten", + "regenerate": "Neu generieren", + "threadImage": "Thread Bild", + "editMessage": "Nachricht bearbeiten", + "deleteMessage": "Nachricht löschen", + "deleteThread": "Thread löschen", + "renameThread": "Thread umbenennen", + "threadTitle": "Thread Titel", + "deleteAllThreads": "Alle Threads löschen", + "allThreadsUnfavorited": "Alle Threads defavorisieren", + "deleteAllThreadsConfirm": "Bist Du sicher, daß Du alle Threads löschen möchtest? Diese Aktion kann nicht rückgängig gemacht werden.", + "addProvider": "Anbieter hinzufügen", + "addOpenAIProvider": "OpenAI Anbieter hinzufügen", + "enterNameForProvider": "Gib einen Namen ein für dienn Anbieter", + "providerAlreadyExists": "Ein Anbieter mit dem Namen \"{{name}}\" existiert bereits. Bitte wähle einen anderen Namen.", + "adjustFontSize": "Schriftgröße einstellen", + "changeLanguage": "Sprache wechseln", + "editTheme": " Vorlage bearbeiten", + "editCodeBlockStyle": "Code Block Stil bearbeiten", + "editServerHost": "Server Host bearbeiten", + "pickColorWindowBackground": "Pick Color Window Background", + "pickColorAppMainView": "Farben wählen für das Hauptfenster", + "pickColorAppPrimary": "Wähle primäre App-Farbe", + "pickColorAppAccent": "Wähle hervorgehobene App-Farbe", + "pickColorAppDestructive": "Wähle destruktive App-Farbe", + "apiKeyRequired": "API Key ist erforderlich", + "enterTrustedHosts": "Vertraute Hosts eingeben", + "placeholder": { + "chatInput": "Frage mich etwas..." + }, + "confirm": "Bestätige", + "loading": "Lade...", + "error": "Error", + "success": "Erfolg", + "warning": "Warnung", + "noResultsFoundDesc": "Wir konnten keinen Chat finden, welcher mit deiner Suche übereinstimmt. Versuche andere Schlüsselworte.", + "searchModels": "Suche Modelle...", + "searchStyles": "Suche Styles...", + "createAssistant": "Assistenten anlegen", + "enterApiKey": "API Key eingeben", + "scrollToBottom": "Zum Ende scrollen", + "addModel": { + "title": "Modell hinzufügen", + "modelId": "Modell ID", + "enterModelId": "Modell ID eingeben", + "addModel": "Modell hinzufügen", + "description": "Neues Modell zum Anbieter hinzufügen", + "exploreModels": "Modelle des Anbieters ansehen" + }, + "mcpServers": { + "editServer": "Server bearbeiten", + "addServer": "Server hinzufügen", + "serverName": "Server Name", + "enterServerName": "Server Namen eingeben", + "command": "Kommando", + "enterCommand": "Kommando eingeben", + "arguments": "Argumente", + "argument": "Argument {{index}}", + "envVars": "Umgebungs Variable", + "key": "Schlüssel", + "value": "Wert", + "save": "Speichern" + }, + "deleteServer": { + "title": "Server löschen", + "delete": "Löschen" + }, + "editJson": { + "errorParse": "Failed to parse JSON", + "errorPaste": "Failed to paste JSON", + "errorFormat": "Invalid JSON format", + "titleAll": "Edit All Servers Configuration", + "placeholder": "Enter JSON configuration...", + "save": "Save" + }, + "editModel": { + "title": "Modell bearbeiten: {{modelId}}", + "description": "Konfiguriere die Modelfähigkeiten durch Umschalten der untenstehenden Optionen.", + "capabilities": "Modelfähigkeiten", + "tools": "Werkzeuge", + "vision": "Vision", + "embeddings": "Einbettungen", + "notAvailable": "Nicht verfügbar bisher" + }, + "outOfContextError": { + "truncateInput": "Input verkleinern", + "title": "Out of context error", + "description": "Dieser Chat erreicht das KI Speicher Limit. Wir können das Speicherfenster vergrößern (auch Kontextgröße genannt), so daß sich die KI an mehr erinnern kann, aber dies erfordert es mehr Speicher zu verwenden. Um Platz zu schaffen können wir auch den Input verkleinern, was bedeutet, daß die KI einen Teil seiner Chat-Historie vergisst.", + "increaseContextSizeDescription": "Möchtest Du die Kontextgröße erhöhen?", + "increaseContextSize": "Kontextgröße erhöhen" + }, + "toolApproval": { + "title": "Anfrage für Werkzeugnutzung", + "description": "Der Assistant möchte {{toolName}} verwenden", + "securityNotice": "Erlaube nur Werkzeuge zu nutzen denen Du vertraust. Werkzeuge können auf deine Daten oder System zugreifen.", + "deny": "Ablehnen", + "allowOnce": "Einmal erlauben", + "alwaysAllow": "Immer erlauben" + }, + "deleteModel": { + "title": "Modell löschen: {{modelId}}", + "description": "Bist Du sicher, daß Du dieses Modell löschen möchtest? Diese Aktion kann nicht rückgängig gemacht werden.", + "success": "Modell {{modelId}} wurde permanent gelöscht.", + "cancel": "Abbrechen", + "delete": "Löschen" + }, + "deleteProvider": { + "title": "Anbieter löschen", + "description": "Lösche diesen Anbieter und alle seine Modelle. Diese Aktion kann nicht rückgängig gemacht werden.", + "success": "Anbieter {{provider}} wurde permanent gelöscht.", + "confirmTitle": "Anbieter löschen: {{provider}}", + "confirmDescription": "Bist Du sicher, daß Du diesen Anbieter löschen möchtest? Diese Aktion kann nicht rückgängig gemacht werden.", + "cancel": "Abbrechen", + "delete": "Löschen" + }, + "modelSettings": { + "title": "Modell Einstellungen - {{modelId}}", + "description": "Modeleinstellungen konfigurieren, um die Leistung und das Verhalten zu optimieren." + }, + "dialogs": { + "changeDataFolder": { + "title": "Speicherort des Datenordners ändern", + "description": "Bist Du sicher den Speicherort des Datenordners zu ändern? Dies wird alle Daten zum neuen Speicherort verschieben und anschließend die Anwendung neu starten.", + "currentLocation": "Aktueller Speicherort:", + "newLocation": "Neuer Speicherort:", + "cancel": "Abbrechen", + "changeLocation": "Speicherort ändern" + }, + "deleteAllThreads": { + "title": "Alle Threads löschen", + "description": "Alle Threads werden gelöscht. Diese Aktion kann nicht rückgängig gemacht werden." + }, + "deleteThread": { + "description": "Bist Du sicher, daß Du diesen Thread löschen möchtest? Diese Aktion kann nicht rückgängig gemacht werden." + }, + "editMessage": { + "title": "Nachricht bearbeiten" + }, + "messageMetadata": { + "title": "Nachricht Metadaten" + } + }, + "toast": { + "allThreadsUnfavorited": { + "title": "Alle Threads De-Favorisieren ", + "description": "Alle deine Threads wurden defavorisiert." + }, + "deleteAllThreads": { + "title": "Alle Threads löschen", + "description": "Alle deine Threads wurden permanent gelöscht." + }, + "renameThread": { + "title": "Thread umbenennen", + "description": "Thread Titel wurde umbenannt zu '{{title}}'" + }, + "deleteThread": { + "title": "Thread löschen", + "description": "This thread has been permanently deleted." + }, + "editMessage": { + "title": "Nachricht bearbeiten", + "description": "Die Nachricht wurde erfolgreich bearbeitet. Bitte warte auf die Antwort des Models." + }, + "appUpdateDownloaded": { + "title": "App Update heruntergeladen", + "description": "Das App-Update wurde erfolgreich heruntergeladen." + }, + "appUpdateDownloadFailed": { + "title": "App Update Download fehlgeschlagen", + "description": "Das App-Update konnte nicht heruntergeladen werden. Bitte versuche es noch einmal." + }, + "downloadComplete": { + "title": "Download abgeschlossen", + "description": "Das Modell {{modelId}} wurde heruntergeladen" + }, + "downloadCancelled": { + "title": "Download abgebrochen", + "description": "Der Download-Prozess wurde abgebrochen" + } + }, + "cortexFailureDialog": { + "title": "Problem mit der lokalen KI-Engine", + "description": "Die Lokale KI-Engine (Cortex) konnte nach mehreren Versuchen nicht gestartet werden. Dies verhindert möglicherweise die korrekte Ausführung diverser Funktionalitäten.", + "contactSupport": "Support kontaktieren", + "restartJan": "Jan neu starten" + } +} diff --git a/web-app/src/locales/de-DE/hub.json b/web-app/src/locales/de-DE/hub.json new file mode 100644 index 000000000..890f0a9ff --- /dev/null +++ b/web-app/src/locales/de-DE/hub.json @@ -0,0 +1,31 @@ +{ + "sortNewest": "Neueste", + "sortMostDownloaded": "Meist heruntergeladen", + "use": "Nutzen", + "download": "Herunterladen", + "downloaded": "Heruntergeladen", + "loadingModels": "Lade Modelle...", + "noModels": "Keine Modelle gefunden", + "by": "Von", + "downloads": "Downloads", + "variants": "Varianten", + "showVariants": "Zeige Varianten", + "useModel": "Nutze dieses Modell", + "downloadModel": "Modell herunterladen", + "searchPlaceholder": "Suche nach Modellen auf Hugging Face...", + "editTheme": "Bearbeite Erscheingsbild", + "joyride": { + "recommendedModelTitle": "Empfohlenes Modell", + "recommendedModelContent": "Durchsuche und lade leistungsstarke KI-Modelle verschiedener Anbieter an einem Ort herunter. Wir empfehlen mit Jan-Nano zu beginnen, einem Modell, das für Funktionsaufrufe, Werkzeug-Integration und Forschungsfunktionen optimiert ist. Es eignet sich ideal für die Entwicklung interaktiver KI-Agenten.", + "downloadInProgressTitle": "Download läuft", + "downloadInProgressContent": "Dein Modell wird jetzt heruntergeladen. Verfolge hier den Fortschritt. Sobald der Download abgeschlossen ist, ist es einsatzbereit.", + "downloadModelTitle": "Modell herunterladen", + "downloadModelContent": "Klicke auf den Download Button um das Herunterladen zu beginnen.", + "back": "Zurück", + "close": "Schließen", + "lastWithDownload": "Download", + "last": "Fertig", + "next": "Nächstes", + "skip": "Überspringen" + } +} diff --git a/web-app/src/locales/de-DE/logs.json b/web-app/src/locales/de-DE/logs.json new file mode 100644 index 000000000..90462f8cb --- /dev/null +++ b/web-app/src/locales/de-DE/logs.json @@ -0,0 +1,3 @@ +{ + "noLogs": "Keine Logs verfügbar" +} diff --git a/web-app/src/locales/de-DE/mcp-servers.json b/web-app/src/locales/de-DE/mcp-servers.json new file mode 100644 index 000000000..83b4b145c --- /dev/null +++ b/web-app/src/locales/de-DE/mcp-servers.json @@ -0,0 +1,43 @@ +{ + "editServer": "MCP Server bearbeiten", + "addServer": "MCP Server hinzufügen", + "serverName": "Server Name", + "enterServerName": "Server Namen eingeben", + "command": "Kommando", + "enterCommand": "Kommando eingeben (uvx oder npx)", + "arguments": "Argumente", + "argument": "Argument {{index}}", + "envVars": "Umgebungs Variablen", + "key": "Schlüssel", + "value": "Wert", + "save": "Speichern", + "status": "Status", + "connected": "Verbunden", + "disconnected": "Nicht verbunden", + "deleteServer": { + "title": "MCP Server löschen", + "description": "Bist Du sicher, daß Du den MCP server {{serverName}} löschen möchtest? Diese Aktion kann nicht rückgängig gemacht werden.", + "delete": "" + }, + "editJson": { + "title": "JSON für den MCP Server bearbeiten: {{serverName}}", + "titleAll": "JSON für alle MCP Server bearbeiten", + "placeholder": "JSON Konfiguration eingeben", + "errorParse": "Fehler beim Parsen der initialen Daten", + "errorPaste": "Ungültiges JSON Format in dem eingefügten Inhalt", + "errorFormat": "Ungültiges JSON format", + "save": "Speichern" + }, + "checkParams": "Bitte überprüfe die Parameter gemäß dem Tutorial.", + "title": "MCP Server", + "experimental": "Experimentell", + "editAllJson": "JSON aller Server bearbeiten", + "findMore": "Finde mehr MCP Server bei", + "allowPermissions": "Erlaube allen MCP Werkzeugen den Zugriff", + "allowPermissionsDesc": "Wenn aktiviert, werden alle MCP-Werkzeug-Aufrufe automatisch genehmigt, ohne daß Berechtigungsdialoge angezeigt werden.", + "noServers": "Keine MCP Server gefunden", + "args": "Argumente", + "env": "Umgebung", + "serverStatusActive": "Server {{serverKey}} erfolgreich aktiviert", + "serverStatusInactive": "Server {{serverKey}} erfolgreich deaktiviert" +} diff --git a/web-app/src/locales/de-DE/model-errors.json b/web-app/src/locales/de-DE/model-errors.json new file mode 100644 index 000000000..280f6b263 --- /dev/null +++ b/web-app/src/locales/de-DE/model-errors.json @@ -0,0 +1,7 @@ +{ + "title": "Out of context error", + "description": "Dieser Chat erreicht das KI Speicher Limit. Wir können das Speicherfenster vergrößern (auch Kontextgröße genannt), so daß sich die KI an mehr erinnern kann, aber dies erfordert es mehr Speicher zu verwenden. Um Platz zu schaffen können wir auch den Input verkleinern, was bedeutet, daß die KI einen Teil seiner Chat-Historie vergisst.", + "increaseContextSizeDescription": "Möchstest Du die Kontextgröße erhöhen?", + "truncateInput": "Input verkleinern", + "increaseContextSize": "Kontextgröße erhöhen" +} diff --git a/web-app/src/locales/de-DE/provider.json b/web-app/src/locales/de-DE/provider.json new file mode 100644 index 000000000..89dd2ae56 --- /dev/null +++ b/web-app/src/locales/de-DE/provider.json @@ -0,0 +1,5 @@ +{ + "addProvider": "Anbieter hinzufügen", + "addOpenAIProvider": "OpenAI Anbieter hinzufügen", + "enterNameForProvider": "Namen für Anbieter eingeben" +} diff --git a/web-app/src/locales/de-DE/providers.json b/web-app/src/locales/de-DE/providers.json new file mode 100644 index 000000000..788e69300 --- /dev/null +++ b/web-app/src/locales/de-DE/providers.json @@ -0,0 +1,68 @@ +{ + "joyride": { + "chooseProviderTitle": "Wähle einen Anbieter", + "chooseProviderContent": "Wähle den Anbieter aus, den Du verwenden möchtest, und stelle sicher, daß Du Zugriff auf einen API-Schlüssel dafür hast.", + "getApiKeyTitle": "Hole Dir Deinen API-Schlüssel", + "getApiKeyContent": "Melde Dich bei dem Anbieter an, um Deinen API-Schlüssel zu finden oder zu generieren.", + "insertApiKeyTitle": "Gebe Deinen API Schlüssel ein", + "insertApiKeyContent": "Füge hier Deinen API-Schlüssel ein, um eine Verbindung zum Anbieter herzustellen und ihn zu aktivieren.", + "back": "Zurück", + "close": "Schließen", + "last": "Abschließen", + "next": "Nächster", + "skip": "Überspringen" + }, + "refreshModelsError": "Der Anbieter muss über eine Basis-URL und einen API-Schlüssel verfügen, um Modelle abzurufen.", + "refreshModelsSuccess": "{{count}} neue(s) Modell(e) hinzugefügt von {{provider}}.", + "noNewModels": "Keine neuen Modelle gefunden. Alle verfügbaren Modelle sind bereits hinzugefügt.", + "refreshModelsFailed": "Das Abrufen der Modelle von {{provider}} ist fehlgeschlagen. Bitte überprüfe Deinen API-Schlüssel und die Basis-URL.", + "models": "Modelle", + "refreshing": "Aktualisiere...", + "refresh": "Aktualisieren", + "import": "Importieren", + "importModelSuccess": "Modell von {{provider}} wurde erfolgreich importiert.", + "importModelError": "Modellimport ist fehlgeschlagen:", + "stop": "Stop", + "start": "Start", + "noModelFound": "Kein Modell gefunden", + "noModelFoundDesc": "Verfügbare Modelle werden hier aufgelistet. Wenn Du noch keine Modelle hast, können diese im Hub heruntergeladen werden.", + "configuration": "Konfiguration", + "apiEndpoint": "API Endpunkt", + "testConnection": "Teste Verbindung", + "addModel": { + "title": "Neues Modell hinzufügen", + "description": "Neues Modell zu Anbieter {{provider}} hinzufügen.", + "modelId": "Modell ID", + "enterModelId": "Modell ID eingeben", + "exploreModels": "Sehe Modellliste von {{provider}}", + "addModel": "Modell hinzufügen" + }, + "deleteModel": { + "title": "Lösche Modell: {{modelId}}", + "description": "Möchtest Du dieses Modell wirklich löschen? Diese Aktion kann nicht rückgängig gemacht werden.", + "success": "Modell {{modelId}} wurde permanent gelöscht.", + "cancel": "Abbrechen", + "delete": "Löschen" + }, + "deleteProvider": { + "title": "Anbieter löschen", + "description": "Lösche diesen Anbieter und alle seine Modelle. Diese Aktion kann nicht rückgängig gemacht werden.", + "success": "Anbieter {{provider}} wurde permanent gelöscht .", + "confirmTitle": "Lösche Anbieter: {{provider}}", + "confirmDescription": "Möchtest Du diesen Anbieter wirklich löschen? Diese Aktion kann nicht rückgängig gemacht werden.", + "cancel": "Abbrechen", + "delete": "Löschen" + }, + "editModel": { + "title": "Modell bearbeiten: {{modelId}}", + "description": "Konfiguriere die Modellfunktionen, indem Du die folgenden Optionen einstellst.", + "capabilities": "Fähigkeiten", + "tools": "Werkzeuge", + "vision": "Vision", + "embeddings": "Einbettungen", + "notAvailable": "Noch nicht verfügbar" + }, + "addProvider": "Anbieter hinzufügen", + "addOpenAIProvider": "OpenAI Anbieter hinzufügen", + "enterNameForProvider": "Namen für den Anbieter eingeben" +} diff --git a/web-app/src/locales/de-DE/settings.json b/web-app/src/locales/de-DE/settings.json new file mode 100644 index 000000000..067ba1bcf --- /dev/null +++ b/web-app/src/locales/de-DE/settings.json @@ -0,0 +1,248 @@ +{ + "autoDownload": "Automatisch neue Updates herunterladen", + "checkForUpdates": "Auf Updates prüfen", + "checkForUpdatesDesc": "Prüfe, ob eine neuere Version von Jan verfügbar ist.", + "checkingForUpdates": "Suche nach Updates...", + "noUpdateAvailable": "Du verwendest die neueste Version", + "devVersion": "Entwicklungsversion erkannt", + "updateError": "Fehler beim Suchen nach Updates", + "changeLocation": "Ort ändern", + "copied": "Kopiert", + "copyPath": "Pfad kopieren", + "openLogs": "Logs öffnen", + "revealLogs": "Logs aufzeigen", + "showInFinder": "Zeige im Finder", + "showInFileExplorer": "Zeige in Datei Explorer", + "openContainingFolder": "Enthaltenen Ordner öffnen", + "failedToRelocateDataFolder": "Datenordner konnte nicht verschoben werden", + "failedToRelocateDataFolderDesc": "Der Datenordner konnte nicht verschoben werden. Bitte versuche es erneut.", + "factoryResetTitle": "Auf Werkseinstellungen zurücksetzen", + "factoryResetDesc": "Dadurch werden alle App-Einstellungen auf die Standardeinstellungen zurückgesetzt. Dieser Vorgang kann nicht rückgängig gemacht werden. Wir empfehlen dies nur, wenn die App beschädigt ist.", + "cancel": "Abbrechen", + "reset": "Zurücksetzen", + "resources": "Ressourcen", + "documentation": "Dokumentation", + "documentationDesc": "Erfahre, wie Du Jan verwenden und seine Funktionen erkunden kannst.", + "viewDocs": "Dokumentation ansehen", + "releaseNotes": "Release Notes", + "releaseNotesDesc": "Siehe, was es Neues in der neuesten Version von Jan gibt.", + "viewReleases": "Releases ansehen", + "community": "Community", + "github": "GitHub", + "githubDesc": "Beitragen zu Jan's Entwicklung.", + "discord": "Discord", + "discordDesc": "Trete unserer Community für Unterstützung und Diskussionen bei.", + "support": "Support", + "reportAnIssue": "Melde ein Problem", + "reportAnIssueDesc": "Hast Du einen Bug gefunden? Hilf uns, indem Du ein Problem auf GitHub meldest.", + "reportIssue": "Problem melden", + "credits": "Credits", + "creditsDesc1": "Jan wurde mit ❤️ gebaut vom Menlo Team.", + "creditsDesc2": "Besonderer Dank gilt unseren Open-Source-Abhängigkeiten - insbesondere llama.cpp und Tauri - und unserer großartigen KI-Community.", + "appVersion": "App Version", + "dataFolder": { + "appData": "App Daten", + "appDataDesc": "Standardspeicherort für Nachrichten und andere Benutzerdaten.", + "appLogs": "App Logs", + "appLogsDesc": "Zeige detaillierte Logs der App an." + }, + "others": { + "spellCheck": "Rechtschreibprüfung", + "spellCheckDesc": "Aktiviere die Rechtschreibprüfung für Deine Threads.", + "resetFactory": "Auf Werkseinstellungen zurücksetzen", + "resetFactoryDesc": "Setzt die Anwendung in den ursprünglichen Zustand zurück und löscht dabei alle Modelle und den Chatverlauf. Diese Aktion ist irreversibel und wird nur empfohlen, wenn die Anwendung beschädigt ist." + }, + "shortcuts": { + "application": "Anwendung", + "newChat": "Neuer Chat", + "newChatDesc": "Neuen Chat anlegen.", + "toggleSidebar": "Seitenleiste umschalten", + "toggleSidebarDesc": "Seitenleiste ein- oder ausblenden.", + "zoomIn": "Vergrößern", + "zoomInDesc": "Erhöhe die Zoomstufe.", + "zoomOut": "Verkleinern", + "zoomOutDesc": "Verringere die Zoomstufe.", + "chat": "Chat", + "sendMessage": "Nachricht senden", + "sendMessageDesc": "Aktuelle Nachricht senden", + "enter": "Eingabe", + "newLine": "Neue Zeile", + "newLineDesc": "Neue Zeile einfügen.", + "shiftEnter": "Shift + Enter", + "navigation": "Navigation", + "goToSettings": "Gehe zu den Einstellungen", + "goToSettingsDesc": "Einstellungen öffnen." + }, + "appearance": { + "title": "Erscheinungsbild", + "theme": "Theme", + "themeDesc": "Dem Betriebssystem anpassen.", + "fontSize": "Schriftgröße", + "fontSizeDesc": "Einstellen der App Schriftgröße", + "windowBackground": "Fenster Hintergrund", + "windowBackgroundDesc": "Lege die Hintergrundfarbe des App-Fensters fest.", + "appMainView": "App-Hauptansicht", + "appMainViewDesc": "Lege die Hintergrundfarbe des Hauptinhaltsbereichs fest.", + "primary": "Primär", + "primaryDesc": "Lege die Primärfarbe für UI-Komponenten fest.", + "accent": "Akzent", + "accentDesc": "Lege die Akzentfarbe für UI-Hervorhebungen fest.", + "destructive": "Destruktiv", + "destructiveDesc": "Lege die Farbe für destruktive Aktionen fest.", + "resetToDefault": "Auf Werkseinstellungen zurücksetzen", + "resetToDefaultDesc": "Setzt alle Darstellungseinstellungen auf die Standardeinstellungen zurück.", + "resetAppearanceSuccess": "Erscheinungsbild erfolgreich zurückgesetzt", + "resetAppearanceSuccessDesc": "Alle Darstellungseinstellungen wurden auf die Standardeinstellungen zurückgesetzt.", + "chatWidth": "Chat Breite", + "chatWidthDesc": "Passe die Breite der Chatansicht an.", + "codeBlockTitle": "Code Block", + "codeBlockDesc": "Wähle einen Stil zur Syntaxhervorhebung.", + "showLineNumbers": "Zeilennummern anzeigen", + "showLineNumbersDesc": "Zeilennummern in Codeblöcken anzeigen.", + "resetCodeBlockStyle": "Codeblockstil zurücksetzen", + "resetCodeBlockStyleDesc": "Codeblockstil auf Standard zurücksetzen.", + "resetCodeBlockSuccess": "Codeblockstil erfolgreich zurückgesetzt", + "resetCodeBlockSuccessDesc": "Der Codeblockstil wurde auf die Standardeinstellung zurückgesetzt." + }, + "hardware": { + "os": "Betriebssystem", + "name": "Name", + "version": "Version", + "cpu": "CPU", + "model": "Modell", + "architecture": "Architektur", + "cores": "Kerne", + "instructions": "Instruktionen", + "usage": "Nutzung", + "memory": "Speicher", + "totalRam": "RAM Total", + "availableRam": "Verfügbarer RAM", + "vulkan": "Vulkan", + "enableVulkan": "Vulkan aktivieren", + "enableVulkanDesc": "Verwende die Vulkan-API zur GPU-Beschleunigung. Aktiviere Vulkan nicht, wenn Du eine NVIDIA-GPU verwendest, da dies zu Kompatibilitätsproblemen führen kann.", + "gpus": "GPUs", + "noGpus": "Keine GPUs erkannt", + "vram": "VRAM", + "freeOf": "frei von", + "driverVersion": "Treiber Version", + "computeCapability": "Rechenfähigkeit", + "systemMonitor": "System Monitor" + }, + "httpsProxy": { + "proxy": "Proxy", + "proxyUrl": "Proxy URL", + "proxyUrlDesc": "Die URL und der Port deines Proxyservers.", + "proxyUrlPlaceholder": "http://proxy.example.com:8080", + "authentication": "Authentifizierung", + "authenticationDesc": "Anmeldeinformationen für den Proxyserver, falls erforderlich.", + "username": "Username", + "password": "Passwort", + "noProxy": "Kein Proxy", + "noProxyDesc": "Eine durch Kommas getrennte Liste von Hosts, um den Proxy zu umgehen.", + "noProxyPlaceholder": "localhost,127.0.0.1,.local", + "sslVerification": "SSL Verifikation", + "ignoreSsl": "SSL Certificates ignorieren", + "ignoreSslDesc": "Erlaube selbstsignierte oder nicht verifizierte Zertifikate. Dies kann für einige Proxys erforderlich sein, verringert aber die Sicherheit. Aktiviere diese Option nur, wenn Du Deinem Proxy vertraust.", + "proxySsl": "Proxy SSL", + "proxySslDesc": "Validieren des SSL-Zertifikats, wenn eine Verbindung mit dem Proxy hergestellt wird.", + "proxyHostSsl": "Proxy Host SSL", + "proxyHostSslDesc": "Validieren des SSL-Zertifikats des Proxy-Hosts.", + "peerSsl": "Peer SSL", + "peerSslDesc": "Validieren des SSL-Zertifikats von Peer-Verbindungen.", + "hostSsl": "Host SSL", + "hostSslDesc": "Validieren der SSL-Zertifikate der Zielhosts." + }, + "localApiServer": { + "title": "Lokaler API Server", + "description": "Führe lokal einen OpenAI-kompatiblen Server aus.", + "startServer": "Start Server", + "stopServer": "Stop Server", + "serverLogs": "Server Logs", + "serverLogsDesc": "Zeige detaillierte Logs des lokalen API-Servers an.", + "openLogs": "Logs öffnen", + "serverConfiguration": "Server Konfiguration", + "serverHost": "Server Host", + "serverHostDesc": "Netzweraddresse für den Server.", + "serverPort": "Server Port", + "serverPortDesc": "Portnummer für den API Server.", + "apiPrefix": "API Prefix", + "apiPrefixDesc": "Pfadprefix für den API Endpunkt.", + "apiKey": "API Schlüssel", + "apiKeyDesc": "Authentifiziere Anfragen mit einem API-Schlüssel.", + "trustedHosts": "Vertrauenswürdige Hosts", + "trustedHostsDesc": "Hosts, die auf den Server zugreifen dürfen, durch Kommas getrennt.", + "advancedSettings": "Erweiterte Einstellungen", + "cors": "Cross-Origin Resource Sharing (CORS)", + "corsDesc": "Erlaube Cross-Origin-Anfragen an den API-Server.", + "verboseLogs": "Ausführliche Server Logs", + "verboseLogsDesc": "Aktiviere detaillierte Server Logs zum Debuggen" + }, + "privacy": { + "analytics": "Analytik", + "helpUsImprove": "Hilf uns, uns zu verbessern", + "helpUsImproveDesc": "Um uns bei der Verbesserung von Jan zu unterstützen, kannst Du uns anonyme Daten wie Funktionsnutzung und Benutzerzahlen mitteilen. Wir erfassen niemals Deine Chats oder persönlichen Daten.", + "privacyPolicy": "Du hast die volle Kontrolle über Deine Daten. Erfahre mehr in unserer Datenschutzerklärung.", + "analyticsDesc": "Um Jan zu verbessern, müssen wir verstehen, wie es genutzt wird - aber nur mit deiner Hilfe. Du kannst diese Einstellung jederzeit ändern.", + "privacyPromises": "Deine Auswahl hier ändert nichts an unseren grundlegenden Datenschutzversprechen:", + "promise1": "Deine Gespräche bleiben privat und auf deinem Gerät", + "promise2": "Wir erfassen niemals Deine persönlichen Daten oder Chat-Inhalte", + "promise3": "Der gesamte Datenaustausch erfolgt anonym und aggregiert", + "promise4": "Du kannst dich jederzeit abmelden, ohne die Funktionalität zu verlieren", + "promise5": "Wir sind transparent darüber, was wir sammeln und warum" + }, + "general": { + "showInFinder": "Im Finder zeigen", + "showInFileExplorer": "Zeige im Datei Explorer", + "openContainingFolder": "Enthaltenen Ordner öffnen", + "failedToRelocateDataFolder": "Datenordner konnte nicht verschoben werden", + "failedToRelocateDataFolderDesc": "Der Datenordner konnte nicht verschoben werden. Bitte versuche es erneut.", + "devVersion": "Entwicklungsversion erkannt", + "noUpdateAvailable": "Du verwendest die neueste Version", + "updateError": "Fehler beim Suchen nach Updates", + "appVersion": "App Version", + "checkForUpdates": "Auf Updates prüfen", + "checkForUpdatesDesc": "Prüfe, ob eine neuere Version von Jan verfügbar ist.", + "checkingForUpdates": "Suche nach Updates...", + "copied": "Kopiert", + "copyPath": "Pfad kopieren", + "changeLocation": "Ort ändern", + "openLogs": "Logs öffnen", + "revealLogs": "Logs anzeigen", + "factoryResetTitle": "Auf Werkseinstellungen zurücksetzen", + "factoryResetDesc": "Dadurch werden alle App-Einstellungen auf die Standardeinstellungen zurückgesetzt. Dieser Vorgang kann nicht rückgängig gemacht werden. Wir empfehlen dies nur, wenn die App beschädigt ist.", + "cancel": "Abbrechen", + "reset": "Zurücksetzen", + "resources": "Ressourcen", + "documentation": "Dokumentation", + "documentationDesc": "Erfahre, wie Du Jan verwenden und seine Funktionen erkunden kannst.", + "viewDocs": "Dokumentation ansehen", + "releaseNotes": "Release Notes", + "releaseNotesDesc": "Sehe, was es Neues in der neuesten Version von Jan gibt.", + "viewReleases": "Releases anzeigen", + "community": "Community", + "github": "GitHub", + "githubDesc": "Trage zu Jan's Entwicklung bei.", + "discord": "Discord", + "discordDesc": "Trete unserer Community für Unterstützung und Diskussionen bei.", + "support": "Support", + "reportAnIssue": "Melde ein Problem", + "reportAnIssueDesc": "Hast Du einen Bug gefunden? Hilf uns, indem Du ein Problem auf GitHub meldest.", + "reportIssue": "Problem melden", + "credits": "Credits", + "creditsDesc1": "Jan wurde mit ❤️ gebaut vom Menlo Team.", + "creditsDesc2": "Besonderer Dank gilt unseren Open-Source-Abhängigkeiten - insbesondere llama.cpp und Tauri - und unserer großartigen KI-Community." + }, + "extensions": { + "title": "Erweiterungen" + }, + "dialogs": { + "changeDataFolder": { + "title": "Speicherort des Datenordners ändern", + "description": "Möchtest Du den Speicherort des Datenordners wirklich ändern? Dadurch werden alle Deine Daten an den neuen Speicherort verschoben und die Anwendung neu gestartet.", + "currentLocation": "Aktueller Ort:", + "newLocation": "Neuer Ort:", + "cancel": "Abbrechen", + "changeLocation": "Ort ändern" + } + } +} diff --git a/web-app/src/locales/de-DE/setup.json b/web-app/src/locales/de-DE/setup.json new file mode 100644 index 000000000..04c7098c1 --- /dev/null +++ b/web-app/src/locales/de-DE/setup.json @@ -0,0 +1,6 @@ +{ + "welcome": "Willkommen bei Jan", + "description": "Um zu beginnen, mußt Du entweder ein lokales KI-Modell herunterladen oder über einen API-Schlüssel eine Verbindung zu einem Cloud-Modell herstellen.", + "localModel": "Lokales Modell einrichten", + "remoteProvider": "Fernen Anbieter einrichten" +} diff --git a/web-app/src/locales/de-DE/system-monitor.json b/web-app/src/locales/de-DE/system-monitor.json new file mode 100644 index 000000000..798ce77bb --- /dev/null +++ b/web-app/src/locales/de-DE/system-monitor.json @@ -0,0 +1,28 @@ +{ + "title": "System Monitor", + "cpuUsage": "CPU Nutzung", + "model": "Modell", + "cores": "Kerne", + "architecture": "Architektur", + "currentUsage": "Aktuelle Nutzung", + "memoryUsage": "Speicher Nutzung", + "totalRam": "RAM Total", + "availableRam": "Verfügbarer RAM", + "usedRam": "Genutzter RAM", + "runningModels": "Laufende Modelle", + "noRunningModels": "Momentan laufen keine Modelle", + "provider": "Anbieter", + "uptime": "Betriebszeit", + "actions": "Aktionen", + "stop": "Stop", + "activeGpus": "Aktive GPUs", + "noGpus": "Keine GPUs detektiert", + "noActiveGpus": "Keine aktiven GPUs. Alle GPUs sind momentan deaktiviert.", + "vramUsage": "VRAM Nutzung", + "driverVersion": "Treiber Version:", + "computeCapability": "Rechenfähigkeit:", + "active": "Aktiv", + "performance": "Leistung", + "resources": "Ressourcen", + "refresh": "Aktualisieren" +} diff --git a/web-app/src/locales/de-DE/tool-approval.json b/web-app/src/locales/de-DE/tool-approval.json new file mode 100644 index 000000000..849a5c054 --- /dev/null +++ b/web-app/src/locales/de-DE/tool-approval.json @@ -0,0 +1,11 @@ +{ + "title": "Werkzeugaufruf angefordert", + "description": "Der Assistent möchte folgendes Werkzeug verwenden: {{toolName}}", + "securityNotice": "Sicherheits Hinweis: Schädliche Werkzeuge oder Konversationsinhalte könnten den Assistenten möglicherweise zu schädlichen Aktionen verleiten. Überprüfe jeden Werkzeug-Aufruf sorgfältig, bevor Du ihn genehmigst.", + "deny": "Verweigern", + "allowOnce": "Einmal erlauben", + "alwaysAllow": "Immer erlauben", + "permissions": "Berechtigungen", + "approve": "Genehmigen", + "reject": "Ablehnen" +} diff --git a/web-app/src/locales/de-DE/tools.json b/web-app/src/locales/de-DE/tools.json new file mode 100644 index 000000000..7c678c94f --- /dev/null +++ b/web-app/src/locales/de-DE/tools.json @@ -0,0 +1,10 @@ +{ + "toolApproval": { + "title": "Werkzeuggenehmigung erforderlich", + "description": "Der Assistent möchte das Werkzeug {{toolName}} verwenden.", + "securityNotice": "Dieses Werkzeug möchte eine Aktion ausführen. Bitte überprüfen und genehmigen oder Ablehnen.", + "deny": "Ablehnen", + "allowOnce": "Einmal erlauben", + "alwaysAllow": "Immer erlauben" + } +} diff --git a/web-app/src/locales/de-DE/updater.json b/web-app/src/locales/de-DE/updater.json new file mode 100644 index 000000000..b197c6d2f --- /dev/null +++ b/web-app/src/locales/de-DE/updater.json @@ -0,0 +1,10 @@ +{ + "newVersion": "Neue Version {{version}}", + "updateAvailable": "Update Verfügbar", + "nightlyBuild": "Nächtlicher Build", + "showReleaseNotes": "Zeige Release Notes", + "hideReleaseNotes": "Verstecke Release Notes", + "remindMeLater": "Erinnere Mich Später", + "downloading": "Lade herunter...", + "updateNow": "Jetzt Aktualisieren" +} From 6ec0849a1b22d421c6bd87a0077a76e125eb059a Mon Sep 17 00:00:00 2001 From: Bob Ros <130362425+bob-ros2@users.noreply.github.com> Date: Sat, 28 Jun 2025 02:56:25 +0200 Subject: [PATCH 02/19] Update web-app/src/locales/de-DE/assistants.json fix empty field value Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com> --- web-app/src/locales/de-DE/assistants.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web-app/src/locales/de-DE/assistants.json b/web-app/src/locales/de-DE/assistants.json index 02719403f..473bdf95a 100644 --- a/web-app/src/locales/de-DE/assistants.json +++ b/web-app/src/locales/de-DE/assistants.json @@ -1,6 +1,6 @@ { "title": "Assistenten", - "editAssistant": "", + "editAssistant": "Assistent bearbeiten", "deleteAssistant": "Assistenten löschen", "deleteConfirmation": "Assistenten löschen", "deleteConfirmationDesc": "Bist Du sicher, daß Du diesen Assistenten löschen möchtest? Diese Aktion kann nicht rückgängig gemacht werden.", From 90041552b97f09f0b08c2e14d9d6cbe6864dcc7a Mon Sep 17 00:00:00 2001 From: Bob Ros <130362425+bob-ros2@users.noreply.github.com> Date: Sat, 28 Jun 2025 02:57:36 +0200 Subject: [PATCH 03/19] Update web-app/src/locales/de-DE/common.json fix typo in enterNameForProvider Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com> --- web-app/src/locales/de-DE/common.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web-app/src/locales/de-DE/common.json b/web-app/src/locales/de-DE/common.json index 524de59eb..5d1b68adb 100644 --- a/web-app/src/locales/de-DE/common.json +++ b/web-app/src/locales/de-DE/common.json @@ -91,7 +91,7 @@ "deleteAllThreadsConfirm": "Bist Du sicher, daß Du alle Threads löschen möchtest? Diese Aktion kann nicht rückgängig gemacht werden.", "addProvider": "Anbieter hinzufügen", "addOpenAIProvider": "OpenAI Anbieter hinzufügen", - "enterNameForProvider": "Gib einen Namen ein für dienn Anbieter", + "enterNameForProvider": "Gib einen Namen ein für den Anbieter", "providerAlreadyExists": "Ein Anbieter mit dem Namen \"{{name}}\" existiert bereits. Bitte wähle einen anderen Namen.", "adjustFontSize": "Schriftgröße einstellen", "changeLanguage": "Sprache wechseln", From c6ce78912c4ea832f81a8dd23465e6ab05632bfe Mon Sep 17 00:00:00 2001 From: Bob Ros <130362425+bob-ros2@users.noreply.github.com> Date: Sat, 28 Jun 2025 02:58:04 +0200 Subject: [PATCH 04/19] Update web-app/src/locales/de-DE/hub.json fix typo editTheme Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com> --- web-app/src/locales/de-DE/hub.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web-app/src/locales/de-DE/hub.json b/web-app/src/locales/de-DE/hub.json index 890f0a9ff..4fd86b6a6 100644 --- a/web-app/src/locales/de-DE/hub.json +++ b/web-app/src/locales/de-DE/hub.json @@ -13,7 +13,7 @@ "useModel": "Nutze dieses Modell", "downloadModel": "Modell herunterladen", "searchPlaceholder": "Suche nach Modellen auf Hugging Face...", - "editTheme": "Bearbeite Erscheingsbild", + "editTheme": "Bearbeite Erscheinungsbild", "joyride": { "recommendedModelTitle": "Empfohlenes Modell", "recommendedModelContent": "Durchsuche und lade leistungsstarke KI-Modelle verschiedener Anbieter an einem Ort herunter. Wir empfehlen mit Jan-Nano zu beginnen, einem Modell, das für Funktionsaufrufe, Werkzeug-Integration und Forschungsfunktionen optimiert ist. Es eignet sich ideal für die Entwicklung interaktiver KI-Agenten.", From 342509d13647114807ceae59b121e9764f36dab2 Mon Sep 17 00:00:00 2001 From: Bob Ros <130362425+bob-ros2@users.noreply.github.com> Date: Sat, 28 Jun 2025 02:59:00 +0200 Subject: [PATCH 05/19] Update web-app/src/locales/de-DE/model-errors.json fix typo increaseContextSizeDescription Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com> --- web-app/src/locales/de-DE/model-errors.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web-app/src/locales/de-DE/model-errors.json b/web-app/src/locales/de-DE/model-errors.json index 280f6b263..a348ec42d 100644 --- a/web-app/src/locales/de-DE/model-errors.json +++ b/web-app/src/locales/de-DE/model-errors.json @@ -1,7 +1,7 @@ { "title": "Out of context error", "description": "Dieser Chat erreicht das KI Speicher Limit. Wir können das Speicherfenster vergrößern (auch Kontextgröße genannt), so daß sich die KI an mehr erinnern kann, aber dies erfordert es mehr Speicher zu verwenden. Um Platz zu schaffen können wir auch den Input verkleinern, was bedeutet, daß die KI einen Teil seiner Chat-Historie vergisst.", - "increaseContextSizeDescription": "Möchstest Du die Kontextgröße erhöhen?", + "increaseContextSizeDescription": "Möchtest Du die Kontextgröße erhöhen?", "truncateInput": "Input verkleinern", "increaseContextSize": "Kontextgröße erhöhen" } From 5fbde39c75ca2d06cc7cda1165f1e251b93452b1 Mon Sep 17 00:00:00 2001 From: Bob Ros <130362425+bob-ros2@users.noreply.github.com> Date: Sat, 28 Jun 2025 03:00:00 +0200 Subject: [PATCH 06/19] Update web-app/src/locales/de-DE/common.json fix forgotten translation pickColorWindowBackground Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com> --- web-app/src/locales/de-DE/common.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web-app/src/locales/de-DE/common.json b/web-app/src/locales/de-DE/common.json index 5d1b68adb..972ddfa7b 100644 --- a/web-app/src/locales/de-DE/common.json +++ b/web-app/src/locales/de-DE/common.json @@ -98,7 +98,7 @@ "editTheme": " Vorlage bearbeiten", "editCodeBlockStyle": "Code Block Stil bearbeiten", "editServerHost": "Server Host bearbeiten", - "pickColorWindowBackground": "Pick Color Window Background", + "pickColorWindowBackground": "Fensterhintergrundfarbe wählen", "pickColorAppMainView": "Farben wählen für das Hauptfenster", "pickColorAppPrimary": "Wähle primäre App-Farbe", "pickColorAppAccent": "Wähle hervorgehobene App-Farbe", From 50f7de0f2d68b5e30899e78c4e28fb01cf726d1a Mon Sep 17 00:00:00 2001 From: Bob Ros <130362425+bob-ros2@users.noreply.github.com> Date: Sat, 28 Jun 2025 03:01:39 +0200 Subject: [PATCH 07/19] Update web-app/src/locales/de-DE/providers.json fix incosistence insertApiKeyTitle Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com> --- web-app/src/locales/de-DE/providers.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web-app/src/locales/de-DE/providers.json b/web-app/src/locales/de-DE/providers.json index 788e69300..61aee9328 100644 --- a/web-app/src/locales/de-DE/providers.json +++ b/web-app/src/locales/de-DE/providers.json @@ -4,7 +4,7 @@ "chooseProviderContent": "Wähle den Anbieter aus, den Du verwenden möchtest, und stelle sicher, daß Du Zugriff auf einen API-Schlüssel dafür hast.", "getApiKeyTitle": "Hole Dir Deinen API-Schlüssel", "getApiKeyContent": "Melde Dich bei dem Anbieter an, um Deinen API-Schlüssel zu finden oder zu generieren.", - "insertApiKeyTitle": "Gebe Deinen API Schlüssel ein", + "insertApiKeyTitle": "Gebe Deinen API-Schlüssel ein", "insertApiKeyContent": "Füge hier Deinen API-Schlüssel ein, um eine Verbindung zum Anbieter herzustellen und ihn zu aktivieren.", "back": "Zurück", "close": "Schließen", From 4f940055beebce33cc5911c83a75d264ba0aa601 Mon Sep 17 00:00:00 2001 From: Bob Ros <130362425+bob-ros2@users.noreply.github.com> Date: Sat, 28 Jun 2025 03:02:00 +0200 Subject: [PATCH 08/19] Update web-app/src/locales/de-DE/settings.json fix typo in serverHostDesc Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com> --- web-app/src/locales/de-DE/settings.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web-app/src/locales/de-DE/settings.json b/web-app/src/locales/de-DE/settings.json index 067ba1bcf..0e2b11ca5 100644 --- a/web-app/src/locales/de-DE/settings.json +++ b/web-app/src/locales/de-DE/settings.json @@ -162,7 +162,7 @@ "openLogs": "Logs öffnen", "serverConfiguration": "Server Konfiguration", "serverHost": "Server Host", - "serverHostDesc": "Netzweraddresse für den Server.", + "serverHostDesc": "Netzwerkadresse für den Server.", "serverPort": "Server Port", "serverPortDesc": "Portnummer für den API Server.", "apiPrefix": "API Prefix", From e5b392af09d39bff7c6632539ff24e4643e742da Mon Sep 17 00:00:00 2001 From: Bob Ros <130362425+bob-ros2@users.noreply.github.com> Date: Sat, 28 Jun 2025 03:02:42 +0200 Subject: [PATCH 09/19] Update web-app/src/locales/de-DE/tool-approval.json fix typo securityNotice Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com> --- web-app/src/locales/de-DE/tool-approval.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web-app/src/locales/de-DE/tool-approval.json b/web-app/src/locales/de-DE/tool-approval.json index 849a5c054..b90c345a0 100644 --- a/web-app/src/locales/de-DE/tool-approval.json +++ b/web-app/src/locales/de-DE/tool-approval.json @@ -1,7 +1,7 @@ { "title": "Werkzeugaufruf angefordert", "description": "Der Assistent möchte folgendes Werkzeug verwenden: {{toolName}}", - "securityNotice": "Sicherheits Hinweis: Schädliche Werkzeuge oder Konversationsinhalte könnten den Assistenten möglicherweise zu schädlichen Aktionen verleiten. Überprüfe jeden Werkzeug-Aufruf sorgfältig, bevor Du ihn genehmigst.", + "securityNotice": "Sicherheitshinweis: Schädliche Werkzeuge oder Konversationsinhalte könnten den Assistenten möglicherweise zu schädlichen Aktionen verleiten. Überprüfe jeden Werkzeug-Aufruf sorgfältig, bevor Du ihn genehmigst.", "deny": "Verweigern", "allowOnce": "Einmal erlauben", "alwaysAllow": "Immer erlauben", From c187af27e74bcdbccc757ec1be66981dcc13dc2f Mon Sep 17 00:00:00 2001 From: Bob Ros <130362425+bob-ros2@users.noreply.github.com> Date: Sat, 28 Jun 2025 03:04:06 +0200 Subject: [PATCH 10/19] Update web-app/src/locales/de-DE/setup.json MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit change 'ß' to modern German orthography Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com> --- web-app/src/locales/de-DE/setup.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web-app/src/locales/de-DE/setup.json b/web-app/src/locales/de-DE/setup.json index 04c7098c1..a928f8eb1 100644 --- a/web-app/src/locales/de-DE/setup.json +++ b/web-app/src/locales/de-DE/setup.json @@ -1,6 +1,6 @@ { "welcome": "Willkommen bei Jan", - "description": "Um zu beginnen, mußt Du entweder ein lokales KI-Modell herunterladen oder über einen API-Schlüssel eine Verbindung zu einem Cloud-Modell herstellen.", + "description": "Um zu beginnen, musst Du entweder ein lokales KI-Modell herunterladen oder über einen API-Schlüssel eine Verbindung zu einem Cloud-Modell herstellen.", "localModel": "Lokales Modell einrichten", "remoteProvider": "Fernen Anbieter einrichten" } From f962c45d8e9914fce21cd13efe6f235af45561b1 Mon Sep 17 00:00:00 2001 From: Bob Ros <130362425+bob-ros2@users.noreply.github.com> Date: Sat, 28 Jun 2025 03:04:41 +0200 Subject: [PATCH 11/19] Update web-app/src/locales/de-DE/model-errors.json MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit change 'ß' to modern German orthography Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com> --- web-app/src/locales/de-DE/model-errors.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web-app/src/locales/de-DE/model-errors.json b/web-app/src/locales/de-DE/model-errors.json index a348ec42d..ae7e957c8 100644 --- a/web-app/src/locales/de-DE/model-errors.json +++ b/web-app/src/locales/de-DE/model-errors.json @@ -1,6 +1,6 @@ { "title": "Out of context error", - "description": "Dieser Chat erreicht das KI Speicher Limit. Wir können das Speicherfenster vergrößern (auch Kontextgröße genannt), so daß sich die KI an mehr erinnern kann, aber dies erfordert es mehr Speicher zu verwenden. Um Platz zu schaffen können wir auch den Input verkleinern, was bedeutet, daß die KI einen Teil seiner Chat-Historie vergisst.", + "description": "Dieser Chat erreicht das KI Speicher Limit. Wir können das Speicherfenster vergrößern (auch Kontextgröße genannt), so dass sich die KI an mehr erinnern kann, aber dies erfordert es mehr Speicher zu verwenden. Um Platz zu schaffen können wir auch den Input verkleinern, was bedeutet, dass die KI einen Teil seiner Chat-Historie vergisst.", "increaseContextSizeDescription": "Möchtest Du die Kontextgröße erhöhen?", "truncateInput": "Input verkleinern", "increaseContextSize": "Kontextgröße erhöhen" From e6f77faf063e9d82478a7f97817d73b2da0c57d6 Mon Sep 17 00:00:00 2001 From: Bob Ros <130362425+bob-ros2@users.noreply.github.com> Date: Sat, 28 Jun 2025 03:05:46 +0200 Subject: [PATCH 12/19] Update web-app/src/locales/de-DE/providers.json remove useless white space Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com> --- web-app/src/locales/de-DE/providers.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web-app/src/locales/de-DE/providers.json b/web-app/src/locales/de-DE/providers.json index 61aee9328..c4a4961f4 100644 --- a/web-app/src/locales/de-DE/providers.json +++ b/web-app/src/locales/de-DE/providers.json @@ -47,7 +47,7 @@ "deleteProvider": { "title": "Anbieter löschen", "description": "Lösche diesen Anbieter und alle seine Modelle. Diese Aktion kann nicht rückgängig gemacht werden.", - "success": "Anbieter {{provider}} wurde permanent gelöscht .", + "success": "Anbieter {{provider}} wurde permanent gelöscht.", "confirmTitle": "Lösche Anbieter: {{provider}}", "confirmDescription": "Möchtest Du diesen Anbieter wirklich löschen? Diese Aktion kann nicht rückgängig gemacht werden.", "cancel": "Abbrechen", From 3329be5c73c8a618decd0d62624aae3e08f6f15c Mon Sep 17 00:00:00 2001 From: Bob Ros <130362425+bob-ros2@users.noreply.github.com> Date: Sat, 28 Jun 2025 03:06:24 +0200 Subject: [PATCH 13/19] Update web-app/src/locales/de-DE/common.json fix forgotten translation deleteAll Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com> --- web-app/src/locales/de-DE/common.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web-app/src/locales/de-DE/common.json b/web-app/src/locales/de-DE/common.json index 972ddfa7b..6991badc1 100644 --- a/web-app/src/locales/de-DE/common.json +++ b/web-app/src/locales/de-DE/common.json @@ -19,7 +19,7 @@ "helpUsImproveJan": "Hilf uns Jan zu verbessern", "unstarAll": "Alle De-Favorisieren", "unstar": "De-Favorisieren", - "deleteAll": "Delete All", + "deleteAll": "Alles löschen", "star": "Favorisieren", "rename": "Umbenennen", "delete": "Löschen", From 0114d899937219c1f379e68578bff92fef3b5d43 Mon Sep 17 00:00:00 2001 From: Bob Ros <130362425+bob-ros2@users.noreply.github.com> Date: Sat, 28 Jun 2025 03:06:53 +0200 Subject: [PATCH 14/19] Update web-app/src/locales/de-DE/common.json fix forgotten translation Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com> --- web-app/src/locales/de-DE/common.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web-app/src/locales/de-DE/common.json b/web-app/src/locales/de-DE/common.json index 6991badc1..e35c9c780 100644 --- a/web-app/src/locales/de-DE/common.json +++ b/web-app/src/locales/de-DE/common.json @@ -110,7 +110,7 @@ }, "confirm": "Bestätige", "loading": "Lade...", - "error": "Error", + "error": "Fehler", "success": "Erfolg", "warning": "Warnung", "noResultsFoundDesc": "Wir konnten keinen Chat finden, welcher mit deiner Suche übereinstimmt. Versuche andere Schlüsselworte.", From 9c3b93a8c7f518eba08990207c756125991183da Mon Sep 17 00:00:00 2001 From: Bob Ros <130362425+bob-ros2@users.noreply.github.com> Date: Sat, 28 Jun 2025 03:07:21 +0200 Subject: [PATCH 15/19] Update web-app/src/locales/de-DE/common.json fix forgotten translation Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com> --- web-app/src/locales/de-DE/common.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web-app/src/locales/de-DE/common.json b/web-app/src/locales/de-DE/common.json index e35c9c780..7726176f1 100644 --- a/web-app/src/locales/de-DE/common.json +++ b/web-app/src/locales/de-DE/common.json @@ -27,7 +27,7 @@ "dataFolder": "Daten Ordner", "others": "Andere", "language": "Sprache", - "reset": "Reset", + "reset": "Zurücksetzen", "search": "Suchen", "name": "Name", "cancel": "Abbrechen", From 8a77c415198af02e6ddd22fc5b53794f3c44ac1e Mon Sep 17 00:00:00 2001 From: Bob Ros <130362425+bob-ros2@users.noreply.github.com> Date: Sat, 28 Jun 2025 03:08:28 +0200 Subject: [PATCH 16/19] Update web-app/src/locales/de-DE/mcp-servers.json MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit use modern style of ß Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com> --- web-app/src/locales/de-DE/mcp-servers.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web-app/src/locales/de-DE/mcp-servers.json b/web-app/src/locales/de-DE/mcp-servers.json index 83b4b145c..77cd749a5 100644 --- a/web-app/src/locales/de-DE/mcp-servers.json +++ b/web-app/src/locales/de-DE/mcp-servers.json @@ -16,7 +16,7 @@ "disconnected": "Nicht verbunden", "deleteServer": { "title": "MCP Server löschen", - "description": "Bist Du sicher, daß Du den MCP server {{serverName}} löschen möchtest? Diese Aktion kann nicht rückgängig gemacht werden.", + "description": "Bist Du sicher, dass Du den MCP Server {{serverName}} löschen möchtest? Diese Aktion kann nicht rückgängig gemacht werden.", "delete": "" }, "editJson": { From 224aa1b4e6a8606b01aa117a09d5a432c33a4cf2 Mon Sep 17 00:00:00 2001 From: Bob Ros <130362425+bob-ros2@users.noreply.github.com> Date: Sat, 28 Jun 2025 03:09:21 +0200 Subject: [PATCH 17/19] Update web-app/src/locales/de-DE/mcp-servers.json fix typo Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com> --- web-app/src/locales/de-DE/mcp-servers.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web-app/src/locales/de-DE/mcp-servers.json b/web-app/src/locales/de-DE/mcp-servers.json index 77cd749a5..c90b93b3c 100644 --- a/web-app/src/locales/de-DE/mcp-servers.json +++ b/web-app/src/locales/de-DE/mcp-servers.json @@ -25,7 +25,7 @@ "placeholder": "JSON Konfiguration eingeben", "errorParse": "Fehler beim Parsen der initialen Daten", "errorPaste": "Ungültiges JSON Format in dem eingefügten Inhalt", - "errorFormat": "Ungültiges JSON format", + "errorFormat": "Ungültiges JSON Format", "save": "Speichern" }, "checkParams": "Bitte überprüfe die Parameter gemäß dem Tutorial.", From 2fdfba208a1fa6d36bc5c2156218310770e84a6a Mon Sep 17 00:00:00 2001 From: Bob Ros <130362425+bob-ros2@users.noreply.github.com> Date: Sat, 28 Jun 2025 03:09:51 +0200 Subject: [PATCH 18/19] Update web-app/src/locales/de-DE/mcp-servers.json MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit use modern style for ß Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com> --- web-app/src/locales/de-DE/mcp-servers.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web-app/src/locales/de-DE/mcp-servers.json b/web-app/src/locales/de-DE/mcp-servers.json index c90b93b3c..665c712a2 100644 --- a/web-app/src/locales/de-DE/mcp-servers.json +++ b/web-app/src/locales/de-DE/mcp-servers.json @@ -34,7 +34,7 @@ "editAllJson": "JSON aller Server bearbeiten", "findMore": "Finde mehr MCP Server bei", "allowPermissions": "Erlaube allen MCP Werkzeugen den Zugriff", - "allowPermissionsDesc": "Wenn aktiviert, werden alle MCP-Werkzeug-Aufrufe automatisch genehmigt, ohne daß Berechtigungsdialoge angezeigt werden.", + "allowPermissionsDesc": "Wenn aktiviert, werden alle MCP-Werkzeug-Aufrufe automatisch genehmigt, ohne dass Berechtigungsdialoge angezeigt werden.", "noServers": "Keine MCP Server gefunden", "args": "Argumente", "env": "Umgebung", From 3b7ed881807413cc16b308332740dfdb9321cb59 Mon Sep 17 00:00:00 2001 From: Bob Ros <130362425+bob-ros2@users.noreply.github.com> Date: Sat, 28 Jun 2025 03:11:21 +0200 Subject: [PATCH 19/19] Update web-app/src/locales/de-DE/common.json change to informal Co-authored-by: ellipsis-dev[bot] <65095814+ellipsis-dev[bot]@users.noreply.github.com> --- web-app/src/locales/de-DE/common.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web-app/src/locales/de-DE/common.json b/web-app/src/locales/de-DE/common.json index 7726176f1..ab61a756a 100644 --- a/web-app/src/locales/de-DE/common.json +++ b/web-app/src/locales/de-DE/common.json @@ -56,7 +56,7 @@ "newThread": "Neuer Thread", "noResultsFound": "Keine Ergebnisse gefunden", "noThreadsYet": "Keine Threads bisher", - "noThreadsYetDesc": "Starte eine neue Unterhaltung, um Ihren Threadverlauf hier anzuzeigen.", + "noThreadsYetDesc": "Starte eine neue Unterhaltung, um deinen Threadverlauf hier anzuzeigen.", "downloads": "Downloads", "downloading": "Downloading", "cancelDownload": "Download abbrechen",