- Flutter/Dart (iOS + Android), Riverpod, go_router, i18n via ARB (deutsch) - Feature-Struktur: today, plants, locations, household (V2-Platzhalter), settings - Intervall-Modell: Aufgaben werden aus lastWatered/lastFertilized + Intervall berechnet - In-Memory-Demo-Daten, Firebase-Anbindung folgt im nächsten Block - Doku: Architektur, Firebase-Einrichtung, Forgejo-Git-Hosting Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
123 lines
3.7 KiB
Text
123 lines
3.7 KiB
Text
{
|
||
"@@locale": "de",
|
||
"appTitle": "Planty",
|
||
"menuToday": "Heute",
|
||
"menuPlants": "Meine Pflanzen",
|
||
"menuLocations": "Stellplätze",
|
||
"menuHousehold": "Haushalt",
|
||
"menuSettings": "Einstellungen",
|
||
"todayTitle": "Heute",
|
||
"todayAllDone": "Alles versorgt!",
|
||
"todayEmptyHint": "Heute stehen keine Aufgaben an.",
|
||
"todayNextTask": "Nächste Aufgabe: {date}",
|
||
"@todayNextTask": {
|
||
"placeholders": {
|
||
"date": { "type": "String" }
|
||
}
|
||
},
|
||
"todayOpenTasks": "{count, plural, one{1 offene Aufgabe} other{{count} offene Aufgaben}}",
|
||
"@todayOpenTasks": {
|
||
"placeholders": {
|
||
"count": { "type": "int" }
|
||
}
|
||
},
|
||
"taskWaterTitle": "{name} gießen",
|
||
"@taskWaterTitle": {
|
||
"placeholders": {
|
||
"name": { "type": "String" }
|
||
}
|
||
},
|
||
"taskFertilizeTitle": "{name} düngen",
|
||
"@taskFertilizeTitle": {
|
||
"placeholders": {
|
||
"name": { "type": "String" }
|
||
}
|
||
},
|
||
"taskDueToday": "Heute fällig",
|
||
"taskOverdue": "{days, plural, one{Seit gestern überfällig} other{Seit {days} Tagen überfällig}}",
|
||
"@taskOverdue": {
|
||
"placeholders": {
|
||
"days": { "type": "int" }
|
||
}
|
||
},
|
||
"taskDone": "Erledigt",
|
||
"taskDoneConfirmation": "{name} als erledigt markiert.",
|
||
"@taskDoneConfirmation": {
|
||
"placeholders": {
|
||
"name": { "type": "String" }
|
||
}
|
||
},
|
||
"addPlant": "Pflanze hinzufügen",
|
||
"plantsTitle": "Meine Pflanzen",
|
||
"plantsEmpty": "Noch keine Pflanzen angelegt.",
|
||
"plantsEmptyHint": "Lege deine erste Pflanze über den Button unten an.",
|
||
"plantDetailTitle": "Pflanzenprofil",
|
||
"nicknameLabel": "Spitzname",
|
||
"speciesLabel": "Pflanzenart",
|
||
"locationLabel": "Stellplatz",
|
||
"locationNone": "Kein Stellplatz",
|
||
"wateringEvery": "Gießen: alle {days} Tage",
|
||
"@wateringEvery": {
|
||
"placeholders": {
|
||
"days": { "type": "int" }
|
||
}
|
||
},
|
||
"fertilizingEvery": "Düngen: alle {days} Tage",
|
||
"@fertilizingEvery": {
|
||
"placeholders": {
|
||
"days": { "type": "int" }
|
||
}
|
||
},
|
||
"wateringIntervalLabel": "Gieß-Intervall (Tage)",
|
||
"fertilizingIntervalLabel": "Dünge-Intervall (Tage)",
|
||
"lastWatered": "Zuletzt gegossen: {date}",
|
||
"@lastWatered": {
|
||
"placeholders": {
|
||
"date": { "type": "String" }
|
||
}
|
||
},
|
||
"lastFertilized": "Zuletzt gedüngt: {date}",
|
||
"@lastFertilized": {
|
||
"placeholders": {
|
||
"date": { "type": "String" }
|
||
}
|
||
},
|
||
"never": "noch nie",
|
||
"save": "Speichern",
|
||
"cancel": "Abbrechen",
|
||
"delete": "Löschen",
|
||
"deletePlantQuestion": "{name} wirklich löschen?",
|
||
"@deletePlantQuestion": {
|
||
"placeholders": {
|
||
"name": { "type": "String" }
|
||
}
|
||
},
|
||
"requiredField": "Bitte ausfüllen",
|
||
"invalidNumber": "Bitte eine Zahl größer 0 eingeben",
|
||
"locationsTitle": "Stellplätze",
|
||
"locationsEmpty": "Noch keine Stellplätze angelegt.",
|
||
"addLocation": "Stellplatz hinzufügen",
|
||
"locationNameLabel": "Name des Stellplatzes",
|
||
"locationPlantCount": "{count, plural, =0{Keine Pflanzen} one{1 Pflanze} other{{count} Pflanzen}}",
|
||
"@locationPlantCount": {
|
||
"placeholders": {
|
||
"count": { "type": "int" }
|
||
}
|
||
},
|
||
"householdTitle": "Haushalt",
|
||
"householdPlaceholder": "Hier kannst du bald deinen Haushalt teilen, damit Familie oder Pflanzen-Sitter die Pflanzen mitversorgen können.",
|
||
"householdComingSoon": "Kommt in Version 2",
|
||
"settingsTitle": "Einstellungen",
|
||
"settingsAppearance": "Erscheinungsbild",
|
||
"themeSystem": "System",
|
||
"themeLight": "Hell",
|
||
"themeDark": "Dunkel",
|
||
"settingsTextSize": "Schriftgröße",
|
||
"textSizeNormal": "Normal",
|
||
"textSizeLarge": "Groß",
|
||
"textSizeXLarge": "Sehr groß",
|
||
"settingsHighContrast": "Hoher Kontrast",
|
||
"settingsReminderTime": "Erinnerungszeit",
|
||
"settingsReminderTimeHint": "Zu dieser Uhrzeit erinnert dich Planty an offene Aufgaben.",
|
||
"demoDataBanner": "Demo-Daten – werden durch deine echten Pflanzen ersetzt"
|
||
}
|