Local-first localization authoring and QA utility for .NET applications and games. A local model proposes drafts; deterministic code owns identity, validation, approval, and export. Consumers exchange files — they do not load Localizer assemblies.
- Engine-neutral catalog with stable keys, BCP 47 locales, and Draft/Approved workflow
- Derived Missing and Stale status from fingerprints so approved text survives source changes
- Deterministic validators for
plainand indexedcompositeplaceholders ({0},{1}) - Local Ollama drafting through a provider port; drafts stay unapproved until a human Approves
- Compact per-locale runtime JSON export and Unity Localization String Table CSV import/export
- Avalonia desktop host for catalog authoring, review, and project-folder handoff
- Layered Core / Application / Infrastructure / Desktop solution; dependencies point inward
Localizer.Core
^
Localizer.Application
^
Localizer.Infrastructure
^
Localizer.Desktop
Pipeline intent: Sources -> Neutral catalog -> Drafting and QA -> Review -> Generated outputs.
Projects: Localizer.Core (domain, lifecycle, validation), Localizer.Application (ports and use cases), Localizer.Infrastructure (JSON persistence, Ollama drafting, compact locale export, Unity CSV adapters), Localizer.Desktop (Avalonia composition root), plus Core/Application/Infrastructure test projects.
Details: docs/architecture.md
- C# / .NET 10
- Avalonia
- Ollama local HTTP API
- System.Text.Json
- NUnit
