Repository navigation
Language And Translations
MyGarage supports multiple display languages. You can switch languages from Quick settings (the gear icon in the top bar) and the preference is saved per-user.
| Language | Code |
|---|---|
| English | en (default) |
| German | de |
| French | fr |
| Italian | it |
| Malay | ms |
| Polish | pl |
| Brazilian Portuguese | pt-BR |
| Russian | ru |
| Ukrainian | uk |
How complete each translation is changes with every release. The current figures live in TRANSLATIONS.md, which is generated from the locale files.
Anything not yet translated falls back to English, so a partly translated language is always usable — you'll just see some English mixed in.
Percentages read low even for finished work: a translation identical to its
English source (VIN, Diesel, {{size}} MB) is counted as untranslated, so no
language will ever read 100%. Judge a language by how much English you actually
see rather than by the number.
Every figure drifts downward as features ship, because a new English string is untranslated in every language the moment it lands and nothing back-fills it. Italian and Malay are the most complete, then German and French. Polish, Portuguese, Russian and Ukrainian each came from a single contribution round and have not been topped up since, so more than half of their UI now renders in English. Contributions very welcome.
- Click the gear icon in the top bar to open Quick settings
- Find the Language dropdown
- Select your preferred language
- The UI switches immediately and your preference is saved to your account
If you're not logged in, the preference is saved in your browser's local storage.
Independent of language, you can set your preferred currency for displaying costs:
- Open Quick settings (the gear icon)
- Find the Currency dropdown
- Select from 17 supported currencies (USD, EUR, GBP, PLN, UAH, MYR, and more)
- Click Change Currency to confirm
Currency only changes how values are displayed -- it does not convert existing amounts.
Choose how times of day are shown throughout the app:
- Open Quick settings (the gear icon)
- Find Time Format
- Choose 12-hour (2:30 PM) or 24-hour (14:30)
The default is 12-hour. The setting applies everywhere a time appears -- fuel fill-up times, LiveLink, backups, analytics, and the calendar's day/week view. Like language, it saves to your account (or your browser when you're not logged in).
Community translations are welcome! See TRANSLATING.md for the full contributor guide.
Quick summary:
- Fork the repository
- Copy English files from
frontend/src/locales/en/tofrontend/public/locales/{your-lang}/ - Translate the values (not the keys), preserving
{{variable}}placeholders - Run
bun run validate:translationsto check your work - Open a Pull Request
To add an entirely new language, three config files also need updating -- see the guide for details.