feat: i18n roadmap — internationalization plan for Svelte 5 frontend #16

Merged
gabogg merged 4 commits from feat/i18n into dev 2026-07-09 22:30:57 +00:00
Owner

i18n Roadmap — docs/I18N_ROADMAP.md

Plan to internationalize the Svelte 5 + Tauri desktop frontend using typesafe-i18n.

5-Phase Plan:

  1. Setup — install typesafe-i18n, create en/es dictionaries with typed keys
  2. Integration — reactive locale store, LL() helper for Svelte components, auto-detect Spanish
  3. String replacement — all 10+ Svelte components, toast messages, nav labels
  4. Backend errors (optional) — Accept-Language header or frontend mapping
  5. Demo script — align demo-espanol.sh with translation dict

Key decisions:

  • Spanish as default (PCivil Venezuela)
  • typesafe-i18n for compile-time type safety
  • localStorage for persistence (no Tauri IPC needed)
  • Reactive store — instant UI update on locale change
  • English as base locale (defines shape of all translations)

Estimated: 4-8 hours total.

## i18n Roadmap — docs/I18N_ROADMAP.md Plan to internationalize the Svelte 5 + Tauri desktop frontend using `typesafe-i18n`. ### 5-Phase Plan: 1. **Setup** — install typesafe-i18n, create `en`/`es` dictionaries with typed keys 2. **Integration** — reactive locale store, LL() helper for Svelte components, auto-detect Spanish 3. **String replacement** — all 10+ Svelte components, toast messages, nav labels 4. **Backend errors (optional)** — Accept-Language header or frontend mapping 5. **Demo script** — align demo-espanol.sh with translation dict ### Key decisions: - **Spanish as default** (PCivil Venezuela) - **typesafe-i18n** for compile-time type safety - **localStorage** for persistence (no Tauri IPC needed) - **Reactive store** — instant UI update on locale change - English as base locale (defines shape of all translations) Estimated: 4-8 hours total.
docs: i18n roadmap for Svelte 5 desktop frontend — typesafe-i18n, 5-phase plan
All checks were successful
CI / backend-test (pull_request) Successful in 2m9s
CI / frontend-test (pull_request) Successful in 18s
CI / rust-test (pull_request) Successful in 26s
a8491f40a0
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
PCivil/inventory-system!16
No description provided.