Thank you for helping make TagForge accessible to creators worldwide!
This guide outlines the simplest way to add a new language or improve an existing translation. No coding knowledge or GitHub experience is required.
Assets/Localization/ for an existing language or use en-US.json as a template.{0}, \n) exactly as they are.You only need a simple text editor (Notepad, VS Code, etc.) to work on these files.
Assets/Localization/ in this repository.en-US.json as your template for new languages, or open an existing language file if you want to improve it.language-COUNTRY.json (e.g., de-DE.json or pt-BR.json).Open your file in any text editor.
[!WARNING]
Do not change the keys on the left side. The app uses these keys to find the text. If you change them, your translation will not load.
{
"Settings.Title": "Settings", // ❌ DON'T CHANGE LEFT
"Settings.Save": "Enregistrer" // ✅ TRANSLATE RIGHT
}
| Feature | Rule | Example |
|---|---|---|
| Placeholders | Keep {0}, {1} intact. You may move them to fit your grammar. |
"Loaded {0} models" → "{0} modèles chargés" |
| Newlines | Keep \n intact. This forces a line break in the UI. |
"Error.\nTry again" → "Erreur.\nRéessayez" |
| Quotes | Keep \" intact. This displays a literal quote mark. |
"Say \"Hello\"" → "Dites \"Bonjour\"" |
[!IMPORTANT]
Syntax Watch: Ensure every line (except the last one) ends with a comma,. Do not remove the curly braces{ }at the start and end of the file.
I handle all the code and technical integration. You just need to provide the file!
.json file into the issue description.[!NOTE]
UI space is limited. Prefer short, punchy translations over literal ones (e.g., "Save" vs "Click here to save").
[!NOTE]
If you are unsure about a specific term or context, feel free to ask in Discussions or mention it in your Issue.
Happy Translating! 🌍