Replace Next.js app with Vite React app (gerbil-manager-web)
- Remove gerbil-manager-nextjs (unused scaffold; recoverable from history) - Scaffold gerbil-manager-web: Vite + React 19 + TypeScript - German-only UI (lang=de, central strings in src/strings/de.ts) - Mobile-first shell: bottom tab bar on phones, sidebar on >=768px - react-router with skeleton routes (Start, Rennmaeuse, Wuerfe, Zuechter) - API client (src/api/client.ts) pointing at GerbilManagerWebAPI, configurable via VITE_API_BASE_URL (default http://localhost:5179) - nginx-based Dockerfile with SPA fallback; docker-compose frontend service now builds gerbil-manager-web Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
57
gerbil-manager-web/src/strings/de.ts
Normal file
57
gerbil-manager-web/src/strings/de.ts
Normal file
@@ -0,0 +1,57 @@
|
||||
/**
|
||||
* Zentrale deutsche Texte der Anwendung.
|
||||
* Alle für Benutzer sichtbaren Zeichenketten gehören hierher —
|
||||
* niemals Texte direkt in Komponenten hartkodieren.
|
||||
*/
|
||||
export const de = {
|
||||
app: {
|
||||
title: 'Rennmaus-Manager',
|
||||
tagline: 'Verwaltung für Rennmäuse, Würfe und Züchter',
|
||||
},
|
||||
nav: {
|
||||
home: 'Start',
|
||||
gerbils: 'Rennmäuse',
|
||||
litters: 'Würfe',
|
||||
breeders: 'Züchter',
|
||||
openMenu: 'Menü öffnen',
|
||||
closeMenu: 'Menü schließen',
|
||||
mainNavigation: 'Hauptnavigation',
|
||||
},
|
||||
pages: {
|
||||
home: {
|
||||
title: 'Willkommen',
|
||||
intro:
|
||||
'Hier verwaltest du deine Rennmäuse, Würfe und Züchter. Wähle einen Bereich aus der Navigation.',
|
||||
},
|
||||
gerbils: {
|
||||
title: 'Rennmäuse',
|
||||
comingSoon: 'Die Rennmaus-Verwaltung entsteht gerade. Bald kannst du hier deine Tiere anlegen und pflegen.',
|
||||
},
|
||||
litters: {
|
||||
title: 'Würfe',
|
||||
comingSoon: 'Die Wurf-Verwaltung entsteht gerade. Bald kannst du hier Würfe dokumentieren.',
|
||||
},
|
||||
breeders: {
|
||||
title: 'Züchter',
|
||||
comingSoon: 'Die Züchter-Verwaltung entsteht gerade. Bald kannst du hier Züchter erfassen.',
|
||||
},
|
||||
notFound: {
|
||||
title: 'Seite nicht gefunden',
|
||||
message: 'Die angeforderte Seite existiert nicht.',
|
||||
backHome: 'Zur Startseite',
|
||||
},
|
||||
},
|
||||
api: {
|
||||
errors: {
|
||||
network: 'Verbindung zum Server fehlgeschlagen. Bitte später erneut versuchen.',
|
||||
notFound: 'Der Eintrag wurde nicht gefunden.',
|
||||
server: 'Auf dem Server ist ein Fehler aufgetreten.',
|
||||
unknown: 'Ein unbekannter Fehler ist aufgetreten.',
|
||||
},
|
||||
},
|
||||
common: {
|
||||
loading: 'Lädt …',
|
||||
},
|
||||
} as const
|
||||
|
||||
export type Strings = typeof de
|
||||
Reference in New Issue
Block a user