Skip to content

Contributing Translations

github-actions[bot] edited this page Feb 4, 2026 · 104 revisions

🌍 Translating Calibre-Web Automated

  • 💡 When using Calibre-Web Automated, you may see a notification if your language is missing translations. You can also open your .po file in PoEdit or another editor to see which entries are still untranslated (msgstr "").
  • 🎯 If you want to help but aren't sure which strings are most important, focus on those that appear in the web interface or are marked as fuzzy/incomplete.

If your language needs help, by default you'll see a notification like this that'll link you to this page & encourage you to contribute!:



📈 Current Translation Status (updated automatically)

Language Total Strings Untranslated Completion
Arabic (ar) 1518 517 65%
Czech (cs) 1518 707 53%
German (de) 1518 24 98%
Greek (el) 1518 687 54%
Spanish (es) 1518 24 98%
Finnish (fi) 1518 843 44%
French (fr) 1518 51 96%
Galician (gl) 1518 550 63%
Hungarian (hu) 1518 622 59%
Indonesian (id) 1518 548 63%
Italian (it) 1518 332 78%
Japanese (ja) 1518 386 74%
Khmer (km) 1518 1016 33%
Korean (ko) 1518 338 77%
Dutch (nl) 1518 338 77%
Norwegian (no) 1518 707 53%
Polish (pl) 1518 332 78%
Portuguese (pt) 1518 528 65%
Portuguese (Brazil) (pt_BR) 1518 332 78%
Russian (ru) 1518 332 78%
Slovak (sk) 1518 527 65%
Slovenian (sl) 1518 29 98%
Swedish (sv) 1518 612 59%
Turkish (tr) 1518 912 39%
Ukrainian (uk) 1518 915 39%
Vietnamese (vi) 1518 804 47%
Chinese (Simplified, China) (zh_Hans_CN) 1518 378 75%
Chinese (Traditional, Taiwan) (zh_Hant_TW) 1518 593 60%

🚀 How to Contribute Translations to Calibre-Web Automated

Help make Calibre-Web Automated accessible to users around the world by improving translations! Follow these steps to add or update translations for your language:

1️⃣  Find Your Language's Translation File

  • 🌐 Navigate to the translations section of the CWA repository.
  • 🗂️ Locate the folder for your language (e.g., de for German, fr for French).
  • 📥 Download the messages.po file from cps/translations/<your_language>/LC_MESSAGES/messages.po.

2️⃣  Edit the Translation File

  • 📝 Use a translation editor such as:
  • ✍️ Open the messages.po file and:
    • ➕ Add translations for any empty entries (msgstr "")
    • 🔄 Improve or correct existing translations as needed

3️⃣  Submit Your Changes

  • 🔙 Return to the translation file in the GitHub repo.
  • ✏️ Click the pencil icon to edit, or fork the repository if you prefer to work locally.
  • 📤 Replace the existing messages.po file with your updated version.
  • 🚀 Submit a Pull Request (PR) with a short description of your changes.

4️⃣  Review & Merge

  • 👀 The project maintainers will review your PR and merge it if everything looks good.
  • 🎉 Your translations will be included in the next release!

💡 Tips:

  • ✏️ Only edit the msgstr fields—do not change the msgid values.
  • ❓ If you have questions, open an issue or ask in the project's community channels.
  • 🌎 You can contribute translations for any language, even if it is not yet listed—just create a new folder following the existing structure.

✅ Translation Conventions & Best Practices

  • ✏️ Only edit the msgstr fields—do not change the msgid values.
  • 🧹 Try to keep translations clear, concise, and consistent with the style of the app.
  • 💬 If you see a translation that could be improved, feel free to suggest changes!
  • 📚 For technical terms, try to match the terminology used in your language's ebook apps or platforms.

📚 Resources

🛠️ Troubleshooting

  • 🆘 If you have trouble editing or submitting your .po file, open an issue on GitHub or ask in the project's community channels.
  • 🌍 If your language is not listed, you can create a new folder using the same structure as other languages.
  • ⚠️ If you see errors after submitting a translation, check for syntax issues (e.g., missing quotes or special characters).



🙏 Thank you for helping make Calibre-Web Automated better for everyone! Your contributions make a real difference to users worldwide ❤️

Clone this wiki locally