docs & feat: update project plan to E2E encrypted server storage & initialize monorepo client/server codebases
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
import i18n from 'i18next'
|
||||
import { initReactI18next } from 'react-i18next'
|
||||
import LanguageDetector from 'i18next-browser-languagedetector'
|
||||
import enTranslation from './locales/en.json'
|
||||
import deTranslation from './locales/de.json'
|
||||
|
||||
i18n
|
||||
.use(LanguageDetector)
|
||||
.use(initReactI18next)
|
||||
.init({
|
||||
resources: {
|
||||
en: enTranslation,
|
||||
de: deTranslation
|
||||
},
|
||||
fallbackLng: 'en',
|
||||
interpolation: {
|
||||
escapeValue: false // React already escapes values (prevents XSS)
|
||||
},
|
||||
detection: {
|
||||
order: ['localStorage', 'navigator'],
|
||||
caches: ['localStorage']
|
||||
}
|
||||
})
|
||||
|
||||
export default i18n
|
||||
@@ -0,0 +1,49 @@
|
||||
{
|
||||
"translation": {
|
||||
"app": {
|
||||
"name": "Kapteins Daagbox",
|
||||
"tagline": "Privates Yacht-Logbuch"
|
||||
},
|
||||
"nav": {
|
||||
"dashboard": "Dashboard",
|
||||
"vessel": "Schiffsdaten",
|
||||
"crew": "Crew-Liste",
|
||||
"deviation": "Ablenkungstabelle",
|
||||
"logs": "Logbucheinträge",
|
||||
"settings": "Einstellungen"
|
||||
},
|
||||
"auth": {
|
||||
"welcome": "Willkommen bei Kapteins Daagbox",
|
||||
"tagline": "Sicheres, E2E-verschlüsseltes maritimes Logbuch.",
|
||||
"register": "Mit Passkey registrieren",
|
||||
"login": "Mit Passkey anmelden",
|
||||
"recovery_title": "Ihr Wiederherstellungsschlüssel",
|
||||
"recovery_warning": "WICHTIG: Schreiben Sie diese 12 Wörter auf. Wenn Sie Ihren Passkey und diese Wörter verlieren, können Ihre Daten nicht wiederhergestellt werden.",
|
||||
"confirm_recovery": "Ich habe die Wörter aufgeschrieben",
|
||||
"status_logged_in": "Angemeldet",
|
||||
"status_logged_out": "Abgemeldet"
|
||||
},
|
||||
"sync": {
|
||||
"status_synced": "Synchronisiert",
|
||||
"status_offline": "Offline-Cache",
|
||||
"status_unsynced": "Unsynchronisierte Änderungen"
|
||||
},
|
||||
"vessel": {
|
||||
"title": "Schiffs-Stammdaten",
|
||||
"name": "Yachtname",
|
||||
"port": "Heimathafen",
|
||||
"owner": "Eigner",
|
||||
"callsign": "Funk-Rufzeichen",
|
||||
"mmsi": "MMSI-Nr"
|
||||
},
|
||||
"logs": {
|
||||
"title": "Logbuch-Journal",
|
||||
"new_entry": "Neuer Eintrag",
|
||||
"date": "Datum",
|
||||
"route": "Reise von/nach",
|
||||
"coordinates": "Koordinaten",
|
||||
"weather": "Wetterbedingungen",
|
||||
"save": "Eintrag speichern"
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
{
|
||||
"translation": {
|
||||
"app": {
|
||||
"name": "Kapteins Daagbox",
|
||||
"tagline": "Private Yacht Logbook"
|
||||
},
|
||||
"nav": {
|
||||
"dashboard": "Dashboard",
|
||||
"vessel": "Vessel Profile",
|
||||
"crew": "Crew List",
|
||||
"deviation": "Deviation Table",
|
||||
"logs": "Logbook Entries",
|
||||
"settings": "Settings"
|
||||
},
|
||||
"auth": {
|
||||
"welcome": "Welcome to Kapteins Daagbox",
|
||||
"tagline": "Secure, E2E encrypted maritime logbook.",
|
||||
"register": "Register with Passkey",
|
||||
"login": "Login with Passkey",
|
||||
"recovery_title": "Your Recovery Phrase",
|
||||
"recovery_warning": "IMPORTANT: Write down these 12 words. If you lose your Passkey and these words, your data cannot be recovered.",
|
||||
"confirm_recovery": "I have written down the recovery phrase",
|
||||
"status_logged_in": "Logged in",
|
||||
"status_logged_out": "Logged out"
|
||||
},
|
||||
"sync": {
|
||||
"status_synced": "Synced",
|
||||
"status_offline": "Offline Cache",
|
||||
"status_unsynced": "Unsynced changes"
|
||||
},
|
||||
"vessel": {
|
||||
"title": "Vessel Master Data",
|
||||
"name": "Yacht Name",
|
||||
"port": "Home Port",
|
||||
"owner": "Owner",
|
||||
"callsign": "Call Sign",
|
||||
"mmsi": "MMSI Number"
|
||||
},
|
||||
"logs": {
|
||||
"title": "Logbook Journal",
|
||||
"new_entry": "New Log Entry",
|
||||
"date": "Date",
|
||||
"route": "Route",
|
||||
"coordinates": "Coordinates",
|
||||
"weather": "Weather Conditions",
|
||||
"save": "Save Entry"
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user