fix: compact filter popover; feat: i18n (de/en)
Build & Push Docker Image / build (push) Successful in 2m31s

This commit is contained in:
opencode
2026-08-02 13:42:53 +02:00
parent 95bf49509c
commit 2f38889726
19 changed files with 662 additions and 160 deletions
+168
View File
@@ -0,0 +1,168 @@
{
"app": {
"name": "toolr",
"tagline": "Tool-Bewertungsplattform"
},
"nav": {
"home": "Start",
"browseTools": "Tools durchsuchen",
"addTool": "Tool hinzufügen",
"analytics": "Analysen",
"watchlist": "Merkliste",
"trash": "Papierkorb",
"admin": "Admin",
"redundancy": "Redundanz"
},
"auth": {
"signIn": "Anmelden",
"signInKeycloak": "Mit Keycloak anmelden",
"signOut": "Abmelden",
"username": "Benutzername",
"password": "Passwort",
"login": "Anmelden",
"invalidCredentials": "Ungültiger Benutzername oder ungültiges Passwort",
"notAuthenticated": "Nicht angemeldet",
"loginSubtitle": "Melde dich bei deinem Konto an",
"loginDescription": "Gib deine Zugangsdaten ein, um fortzufahren"
},
"common": {
"cancel": "Abbrechen",
"save": "Speichern",
"delete": "Löschen",
"edit": "Bearbeiten",
"clear": "Leeren",
"clearAll": "Alle löschen",
"search": "Suchen",
"add": "Hinzufügen",
"back": "Zurück",
"backToTools": "Zurück zu den Tools",
"browseTools": "Tools durchsuchen",
"viewAll": "Alle anzeigen",
"loading": "Wird geladen…",
"all": "Alle",
"none": "Keine",
"language": "Sprache"
},
"home": {
"welcome": "Willkommen bei toolr",
"tagline": "Die Community-Plattform, auf der Ingenieure die Tools, die sie täglich nutzen, ehrlich bewerten.",
"totalTools": "Tools gesamt",
"totalRatings": "Bewertungen gesamt",
"avgRating": "Ø Bewertung",
"topRated": "Bestbewertete Tools",
"topRatedSub": "Höchste kombinierte Nützlichkeit und Benutzerfreundlichkeit.",
"recentlyAdded": "Zuletzt hinzugefügt",
"recentlyAddedSub": "Die neuesten Ergänzungen im Katalog.",
"noRatingsYet": "Noch keine Bewertungen",
"noRatingsSub": "Bewerte als Erster ein Tool und hilf der Community.",
"noTools": "Keine Tools gefunden",
"noToolsSub": "Es sind noch keine Tools in der Datenbank vorhanden."
},
"browse": {
"filters": "Filter",
"subtitle": "Entdecke und bewerte die besten Tools für deinen Stack.",
"allCategories": "Alle Kategorien",
"showingTool_one": "{{count}} Tool wird angezeigt",
"showingTool_other": "{{count}} Tools werden angezeigt",
"tool": "Tool",
"category": "Kategorie",
"rating": "Bewertung",
"reviews": "Bewertungen",
"noToolsFound": "Keine Tools gefunden",
"noToolsMatch": "Wir konnten keine Tools finden, die zu deinen Filtern passen. Versuche, die Suchkriterien anzupassen, oder füge ein neues Tool hinzu.",
"addTool": "Tool hinzufügen",
"compare": "Vergleichen",
"compareCount": "Vergleichen ({{count}})",
"addToCompare": "Zum Vergleich hinzufügen",
"removeFromCompare": "Aus dem Vergleich entfernen",
"comparePremiumTitle": "Vergleichen ist ein Premium-Feature",
"comparePremiumSub": "Das Vergleichen von Tools nebeneinander ist für Premium- und Enterprise-Nutzer verfügbar. Erweitere deinen Plan, um es freizuschalten.",
"notNow": "Später",
"upgradePremium": "Auf Premium upgraden",
"sortNewest": "Neueste",
"sortTopRated": "Bestbewertet",
"sortMostReviewed": "Meiste Bewertungen",
"sortNameAsc": "Name (AZ)",
"sortNameDesc": "Name (ZA)",
"sortRecentlyUpdated": "Zuletzt aktualisiert"
},
"filter": {
"tags": "Tags",
"features": "Funktionen",
"minRating": "Mindestbewertung",
"any": "Beliebig",
"clearFilters": "Filter zurücksetzen"
},
"detail": {
"ratingBreakdown": "Bewertungsaufschlüsselung",
"usefulness": "Nützlichkeit",
"usability": "Benutzerfreundlichkeit",
"scoreDistribution": "Punkteverteilung",
"scoreTrend": "Punkteverlauf",
"notEnoughRatings": "Noch nicht genügend Bewertungen für einen Verlauf.",
"reviews": "Bewertungen",
"basedOnReview_one": "Basierend auf {{count}} Bewertung",
"basedOnReview_other": "Basierend auf {{count}} Bewertungen",
"saveToWatchlist": "Zur Merkliste hinzufügen",
"savedToWatchlist": "Zur Merkliste hinzugefügt",
"removeFromWatchlist": "Von der Merkliste entfernen",
"visitWebsite": "Website besuchen",
"edit": "Bearbeiten",
"delete": "Löschen",
"noReviews": "Noch keine Bewertungen.",
"addReview": "Bewertung hinzufügen",
"yourRating": "Deine Bewertung",
"submit": "Bewertung absenden",
"relatedTools": "Ähnliche Tools",
"costs": "Kosten",
"addCost": "Kosten hinzufügen",
"recentRatings": "Letzte Bewertungen"
},
"compare": {
"title": "Tools vergleichen",
"subtitle": "{{count}} Tool(s) werden nebeneinander verglichen.",
"sideBySide": "Vergleich nebeneinander",
"bestValue": "Der beste Wert jeder Zeile ist hervorgehoben.",
"attribute": "Eigenschaft",
"rating": "Bewertung",
"reviews": "Bewertungen",
"description": "Beschreibung",
"lastUpdated": "Zuletzt aktualisiert",
"requiresPremium": "Vergleichen erfordert einen höheren Tarif",
"requiresPremiumSub": "Das Vergleichen von Tools nebeneinander ist für Premium- und Enterprise-Nutzer verfügbar.",
"nothingToCompare": "Nichts zu vergleichen",
"nothingToCompareSub": "Wähle mindestens ein Tool aus und kehre hierher zurück.",
"backToBrowse": "Zurück zur Übersicht"
},
"watchlist": {
"title": "Merkliste",
"subtitle": "Tools, die du für später gespeichert hast, mit Live-Punkten.",
"requiresPremium": "Die Merkliste erfordert einen höheren Tarif",
"requiresPremiumSub": "Das Speichern von Tools in deiner Merkliste ist für Premium- und Enterprise-Nutzer verfügbar.",
"empty": "Deine Merkliste ist leer",
"emptySub": "Durchsuche die Tools und klicke auf das Lesezeichen, um sie hier zu speichern.",
"remove": "Von der Merkliste entfernen"
},
"trash": {
"title": "Papierkorb",
"subtitle": "Gelöschte Tools werden hier aufbewahrt, bis sie wiederhergestellt oder endgültig entfernt werden.",
"requiresPremium": "Der Papierkorb erfordert einen höheren Tarif",
"requiresPremiumSub": "Der Papierkorb ist für Premium- und Enterprise-Nutzer verfügbar.",
"empty": "Der Papierkorb ist leer.",
"noMatch": "Keine Tools entsprechen deiner Suche.",
"trashedTools": "Gelöschte Tools",
"toolsInTrash_one": "{{count}} Tool im Papierkorb",
"toolsInTrash_other": "{{count}} Tools im Papierkorb",
"selected_one": "{{count}} ausgewählt",
"selected_other": "{{count}} ausgewählt",
"restore": "Wiederherstellen",
"deletePermanently": "Endgültig löschen",
"emptyTrash": "Papierkorb leeren",
"deletedAt": "Gelöscht am",
"deletedBy": "Gelöscht von"
},
"notFound": {
"text": "Diese Seite existiert nicht.",
"backHome": "Zurück zur Startseite"
}
}