273 karma · joined October 3, 2013
Instead of magic strings like `$t('menu.settings')`, you use typed references: `$t(i18n.menu.settings)`. TypeScript knows about all translations, IDE autocomplete works, and refactoring is safe. The type-safe approach also makes it easy for AI tools to understand and work with translations.
Features:
- AI translation via DeepL/Claude
- Type-safe translations (no magic strings)
- CLI + web UI
- Real-time WebSocket sync
- Lint to find missing translations in code
Works with i18next format. Uses a workspace file (`.expressio.json`) to track source text and translations. Built partly with AI assistance to speed up development.
Ps. I'm working on a similar opensource tool to speed up the i18n process ( https://codeberg.org/garage44/expressio)
I'm fiddling now and then on an alternative conferencing frontend(Pyrite - https://github.com/garage44/pyrite) for Galene(https://galene.org), which is a SFU that uses Pion.