From d02725b5889356e29c972fe345ea9e8d4ab999ae Mon Sep 17 00:00:00 2001 From: Ameet Madan Date: Tue, 3 Mar 2026 14:40:41 +0100 Subject: [PATCH 1/4] fix(i18n): add all missing translations for German --- i18n/locales/de-DE.json | 114 +++++++++++++++++++++++++++++++++++++--- 1 file changed, 108 insertions(+), 6 deletions(-) diff --git a/i18n/locales/de-DE.json b/i18n/locales/de-DE.json index d895a941b..5dcebed08 100644 --- a/i18n/locales/de-DE.json +++ b/i18n/locales/de-DE.json @@ -17,7 +17,9 @@ "source": "Quellcode", "social": "Social", "chat": "Chat", - "keyboard_shortcuts": "Tastenkombination" + "keyboard_shortcuts": "Tastenkombination", + "blog": "Blog", + "builders_chat": "Builders-Chat" }, "shortcuts": { "section": { @@ -58,6 +60,12 @@ "start_typing": "Tippe, um Pakete zu suchen", "algolia_disclaimer": "Bereitgestellt von Algolia", "exact_match": "exakt", + "instant_search": "Sofortsuche", + "instant_search_on": "Sofortsuche aktiviert", + "instant_search_off": "Sofortsuche deaktiviert", + "instant_search_turn_on": "Sofortsuche aktivieren", + "instant_search_turn_off": "Sofortsuche deaktivieren", + "instant_search_advisory": "Die Sofortsuche sendet bei jedem Tastendruck eine Anfrage.", "suggestion": { "user": "Benutzer", "org": "Organisation", @@ -112,7 +120,9 @@ "translation_progress": "Übersetzungsfortschritt", "background_themes": "Hintergrundschattierung", "keyboard_shortcuts_enabled": "Tastenkombinationen aktivieren", - "keyboard_shortcuts_enabled_description": "Tastenkombinationen können deaktiviert werden, wenn sie mit anderen Browser- oder Systemkürzeln in Konflikt stehen" + "keyboard_shortcuts_enabled_description": "Tastenkombinationen können deaktiviert werden, wenn sie mit anderen Browser- oder Systemkürzeln in Konflikt stehen", + "instant_search": "Sofortsuche", + "instant_search_description": "Suchergebnisse werden automatisch bei der Eingabe aktualisiert, ohne die Eingabetaste zu drücken." }, "i18n": { "missing_keys": "{count} fehlende Übersetzung | {count} fehlende Übersetzungen", @@ -144,7 +154,60 @@ "role": "Rolle", "members": "Mitglieder" }, - "scroll_to_top": "Nach oben scrollen" + "scroll_to_top": "Nach oben scrollen", + "cancel": "Abbrechen", + "save": "Speichern", + "edit": "Bearbeiten", + "error": "Fehler" + }, + "error": { + "401": "Nicht autorisiert", + "404": "Seite nicht gefunden", + "500": "Interner Serverfehler", + "503": "Dienst nicht verfügbar", + "default": "Ein unerwarteter Fehler ist aufgetreten" + }, + "profile": { + "display_name": "Anzeigename", + "description": "Beschreibung", + "no_description": "Keine Beschreibung vorhanden", + "website": "Website", + "website_placeholder": "https://beispiel.de", + "likes": "Likes", + "seo_title": "{name} – Profil auf npmx", + "seo_description": "Profil von {name} auf npmx – Pakete, Likes und mehr.", + "not_found": "Profil nicht gefunden", + "not_found_message": "Dieses Profil konnte nicht gefunden werden.", + "invite": { + "message": "Schau dir mein Profil auf npmx an!", + "share_button": "Profil teilen", + "compose_text": "Schau dir {name} auf npmx an: {url}" + } + }, + "blog": { + "title": "Blog", + "heading": "Blog", + "meta_description": "Neuigkeiten, Updates und Artikel rund um npmx.", + "author": { + "view_profile": "Profil von {name} anzeigen" + }, + "draft_badge": "Entwurf", + "draft_banner": "Dies ist ein Entwurf und noch nicht öffentlich sichtbar.", + "atproto": { + "view_on_bluesky": "Auf Bluesky ansehen", + "reply_on_bluesky": "Auf Bluesky antworten", + "likes_on_bluesky": "{count} Like auf Bluesky | {count} Likes auf Bluesky", + "like_or_reply_on_bluesky": "Auf Bluesky liken oder antworten", + "no_comments_yet": "Noch keine Kommentare. Sei der Erste!", + "could_not_load_comments": "Kommentare konnten nicht geladen werden.", + "comments": "Kommentare", + "loading_comments": "Kommentare werden geladen...", + "updating": "(wird aktualisiert...)", + "reply_count": "{count} Antwort | {count} Antworten", + "like_count": "{count} Like | {count} Likes", + "repost_count": "{count} Repost | {count} Reposts", + "more_replies": "{count} weitere Antwort anzeigen | {count} weitere Antworten anzeigen" + } }, "package": { "not_found": "Paket nicht gefunden", @@ -383,6 +446,8 @@ "y_axis_label": "{facet} {granularity}", "facet": "Facette", "title": "Trends", + "open_options": "Diagrammoptionen öffnen", + "close_options": "Diagrammoptionen schließen", "contributors_skip": "Nicht angezeigt bei Mitwirkende (hat kein GitHub-Repository): | Nicht angezeigt bei Mitwirkende (haben kein GitHub-Repository):", "items": { "downloads": "Downloads", @@ -417,6 +482,7 @@ }, "downloads": { "title": "Wöchentliche Downloads", + "subtitle": "Downloads über die Zeit", "community_distribution": "Community-Adoptionsverteilung ansehen" }, "install_scripts": { @@ -903,6 +969,11 @@ "title": "Bleib auf dem Laufenden", "description": "Erfahre das Neueste über npmx.", "cta": "Auf Bluesky folgen" + }, + "builders": { + "title": "Builders-Community", + "description": "Vernetze dich mit anderen Entwicklern, die auf npmx aufbauen.", + "cta": "Builders-Chat beitreten" } } }, @@ -931,7 +1002,8 @@ "connect_bluesky": "Mit Bluesky verbinden", "what_is_atmosphere": "Was ist ein Atmosphere-Konto?", "atmosphere_explanation": "{npmx} nutzt das {atproto}, um viele seiner sozialen Funktionen zu betreiben. So können Nutzer ihre Daten selbst verwalten und ein einziges Konto für alle kompatiblen Anwendungen nutzen. Sobald du ein Konto erstellt hast, kannst du andere Apps wie {bluesky} und {tangled} mit demselben Konto nutzen.", - "default_input_error": "Bitte geben Sie einen gültigen Handle, eine DID oder eine vollständige PDS-URL ein" + "default_input_error": "Bitte geben Sie einen gültigen Handle, eine DID oder eine vollständige PDS-URL ein", + "profile": "Profil anzeigen" } }, "header": { @@ -986,7 +1058,7 @@ "tooltip_title": "Du brauchst vielleicht keine Abhängigkeit", "tooltip_description": "Vergleiche mit dem Verzicht auf eine Abhängigkeit! Die {link} pflegt eine Liste von Paketen, die durch native APIs oder einfachere Alternativen ersetzt werden können.", "e18e_community": "e18e Community", - "add_column": "Spalte „Keine Abhängigkeit“ zum Vergleich hinzufügen" + "add_column": "Spalte „Keine Abhängigkeit" zum Vergleich hinzufügen" }, "facets": { "group_label": "Vergleichsfacetten", @@ -1103,7 +1175,9 @@ "files_button": "Dateien", "select_file_prompt": "Wähle eine Datei in der Seitenleiste, um die Änderungen anzuzeigen", "close_files_panel": "Dateibereich schließen", - "filter_files_label": "Dateien nach Art der Änderung filtern" + "filter_files_label": "Dateien nach Art der Änderung filtern", + "file_too_large": "Datei zu groß für Diff-Ansicht", + "file_size_warning": "{size} überschreitet das Limit für die Diff-Anzeige" }, "privacy_policy": { "title": "Datenschutzerklärung", @@ -1214,5 +1288,33 @@ "p1": "Wenn du bei {app} auf eine Barriere stößt, sag uns bitte Bescheid, indem du ein Ticket in unserem {link} eröffnest. Wir nehmen diese Meldungen ernst und werden unser Bestes tun, um sie zu beheben.", "link": "GitHub-Repository" } + }, + "pds": { + "title": "npmx PDS", + "meta_description": "Tritt dem persönlichen Datenspeicher (PDS) von npmx bei – deiner Heimat im AT-Protokoll-Netzwerk.", + "join": { + "title": "Dem PDS beitreten", + "description": "Erstelle ein Konto auf dem npmx PDS und werde Teil des dezentralen AT-Protokoll-Netzwerks.", + "migrate": "Bestehende Konto migrieren" + }, + "server": { + "title": "Serverinformationen", + "location_label": "Standort", + "location_value": "EU", + "infrastructure_label": "Infrastruktur", + "infrastructure_value": "Vercel", + "privacy_label": "Datenschutz", + "privacy_value": "Datenschutzerklärung ansehen", + "learn_more": "Mehr über PDS erfahren" + }, + "community": { + "title": "Community", + "description": "Nutzende, die diesen PDS verwenden.", + "loading": "Community wird geladen...", + "error": "Community konnte nicht geladen werden", + "empty": "Noch keine Mitglieder gefunden.", + "view_profile": "Profil von {name} anzeigen", + "new_accounts": "Neue Konten" + } } } From 0151f692bdce29b874f5e75ae8d0bb52ffbc1f58 Mon Sep 17 00:00:00 2001 From: Ameet Madan Date: Tue, 3 Mar 2026 14:48:42 +0100 Subject: [PATCH 2/4] fix: grammar Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --- i18n/locales/de-DE.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/i18n/locales/de-DE.json b/i18n/locales/de-DE.json index 5dcebed08..0044b2ca8 100644 --- a/i18n/locales/de-DE.json +++ b/i18n/locales/de-DE.json @@ -1295,7 +1295,7 @@ "join": { "title": "Dem PDS beitreten", "description": "Erstelle ein Konto auf dem npmx PDS und werde Teil des dezentralen AT-Protokoll-Netzwerks.", - "migrate": "Bestehende Konto migrieren" + "migrate": "Bestehendes Konto migrieren" }, "server": { "title": "Serverinformationen", From 98c03391770c24e7e50fd604f2639e361d36ce2c Mon Sep 17 00:00:00 2001 From: Ameet Madan Date: Tue, 3 Mar 2026 14:49:06 +0100 Subject: [PATCH 3/4] fix: grammar, "Sie" to "du" Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --- i18n/locales/de-DE.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/i18n/locales/de-DE.json b/i18n/locales/de-DE.json index 0044b2ca8..be73bfe3e 100644 --- a/i18n/locales/de-DE.json +++ b/i18n/locales/de-DE.json @@ -1002,7 +1002,7 @@ "connect_bluesky": "Mit Bluesky verbinden", "what_is_atmosphere": "Was ist ein Atmosphere-Konto?", "atmosphere_explanation": "{npmx} nutzt das {atproto}, um viele seiner sozialen Funktionen zu betreiben. So können Nutzer ihre Daten selbst verwalten und ein einziges Konto für alle kompatiblen Anwendungen nutzen. Sobald du ein Konto erstellt hast, kannst du andere Apps wie {bluesky} und {tangled} mit demselben Konto nutzen.", - "default_input_error": "Bitte geben Sie einen gültigen Handle, eine DID oder eine vollständige PDS-URL ein", + "default_input_error": "Bitte gib einen gültigen Handle, eine DID oder eine vollständige PDS-URL ein", "profile": "Profil anzeigen" } }, From dc7c5d71f1821466ee3849414bb24828c2c384e6 Mon Sep 17 00:00:00 2001 From: Ameet Madan Date: Tue, 3 Mar 2026 17:22:06 +0100 Subject: [PATCH 4/4] fix: quotation mark in add_column string --- i18n/locales/de-DE.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/i18n/locales/de-DE.json b/i18n/locales/de-DE.json index be73bfe3e..73252b256 100644 --- a/i18n/locales/de-DE.json +++ b/i18n/locales/de-DE.json @@ -1058,7 +1058,7 @@ "tooltip_title": "Du brauchst vielleicht keine Abhängigkeit", "tooltip_description": "Vergleiche mit dem Verzicht auf eine Abhängigkeit! Die {link} pflegt eine Liste von Paketen, die durch native APIs oder einfachere Alternativen ersetzt werden können.", "e18e_community": "e18e Community", - "add_column": "Spalte „Keine Abhängigkeit" zum Vergleich hinzufügen" + "add_column": "Spalte „Keine Abhängigkeit“ zum Vergleich hinzufügen" }, "facets": { "group_label": "Vergleichsfacetten",