Thank you for your interest in helping translate the Python Deadlines website! This document explains how to contribute translations using Crowdin.
Crowdin is a localization management platform that helps us manage translations for the Python Deadlines website. It provides a user-friendly interface for translators to contribute without needing to understand Git or the technical structure of the project.
- Visit our Crowdin project at https://crowdin.com/project/python-deadlines (Note: Update this URL with your actual project link)
- Create a Crowdin account or sign in if you already have one
- Select the language you want to translate to
- Start translating!
The Python Deadlines website uses Jekyll's internationalization features. Here's how the translation files are structured:
_i18n/en.yml: Main language file containing UI strings_i18n/en/*.md: Markdown files for specific sections_i18n/en/_posts/: Blog post content_i18n/en/search,_i18n/en/footer, etc.: Section-specific content
- Maintain the same formatting: Preserve Markdown formatting, HTML tags, and variables (like
{% t ... %}or{{ ... }}) - Be consistent: Use consistent terminology throughout your translations
- Keep the same meaning: Focus on conveying the same meaning rather than translating word-for-word
- Respect context: Pay attention to the context in which a string appears
- Test your translations: If possible, test how your translations look on the site
When translating, be careful with:
- Jekyll Liquid tags: Tags like
{% t ... %},{{ ... }},{% include ... %}should remain unchanged - HTML tags: Keep all HTML tags (e.g.,
<div>,<span>,<a href="...">) intact - Pluralization: Some languages have different forms based on count; Crowdin supports handling these cases
Pay attention to date and time formats that may be different in your language. The website uses Luxon for date/time formatting.
- String Translation: Translate strings in the Crowdin interface
- Review: Translations are reviewed by language moderators
- Integration: Approved translations are automatically synced to the GitHub repository
- Deployment: Once merged into the main branch, translations are deployed to the live site
If you would like to test your translations locally before submitting:
- Clone the repository:
git clone https://github.com/JesperDramsch/python-deadlines.git - Install Jekyll and dependencies:
bundle install - Run the site locally:
bundle exec jekyll serve - Visit
http://localhost:4000/{language-code}/to see the site in your language
Currently, Python Deadlines is being translated into:
- English (source language)
- Spanish (es)
- German (de)
- French (fr)
- Portuguese (Brazilian) (pt-br)
- Chinese (Simplified) (zh-cn)
- Russian (ru)
- Indonesian (id)
- Hindi (hi)
If you would like to add a new language, please contact the project maintainers.
If you have any questions or issues related to translation, please:
- Open an issue on GitHub
Thank you for helping make Python Deadlines accessible to a wider audience!