weblate
A web-based continuous localization system with tight version control integration
What it is and what it does
Weblate is a production-grade web application for managing translations across software projects. It provides a centralized interface where translators collaborate on localization, with built-in support for gettext, git, and other version control systems. The platform synchronizes translations back to source repositories, enabling continuous localization workflows.
The package is a Django application backed by a large ecosystem of dependencies—Celery for task scheduling, Django REST Framework for APIs, cryptography for authentication, and numerous specialized libraries for translation file handling and text processing. It's designed for deployment as a service, not as a library to import into other applications. Organizations with over 2500 projects rely on it, and it supports current Python versions (3.12 through 3.14).
Use it for:
- Host a self-managed translation platform for an open-source project or company with multiple localization teams across regions.
- Integrate continuous localization into a CI/CD pipeline, automatically pulling source strings and pushing translated content back to version control.
- Manage translations for multiple related projects from a single web interface with role-based access control and audit trails.
- Provide translators with a web UI to collaborate on translations without requiring command-line or version control knowledge.
- Synchronize translations between a git repository and a centralized translation database, reducing merge conflicts and manual coordination.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Weblate is a web-based continuous localization platform that manages translation workflows for software projects, integrating with version control systems to synchronize translations across teams.
Yes, if you need to self-host a translation management platform for a team or organization. Weblate is actively maintained, production-stable, and widely adopted. Install friction is low for a Django application of its scale. The copyleft license is a non-issue for open-source projects but requires legal review for proprietary deployments. No known security vulnerabilities. Suitable for organizations that want to avoid vendor lock-in with hosted services.
Install
weblate on PyPI
pip
pip install weblateuv
uv add weblatepoetry
poetry add weblateInstalling weblate
Before you install
Low install friction with a pure Python wheel distribution. Active maintenance with a release 7 days old and commits as recent as 2026-08-14. Supports current Python versions (3.12, 3.13, 3.14). Requires 88 runtime dependencies including Django, Celery, and cryptography—a substantial but typical stack for a production web application.
License in practice
Licensed under GPL-3.0-or-later (copyleft). Any derivative work or modification must be distributed under the same GPL terms. Suitable for open-source projects and organizations comfortable with copyleft obligations; proprietary or closed-source deployments require careful legal review.
Quickstart
pip install weblate
Following installation, refer to https://docs.weblate.org/en/latest/admin/install.html for setup instructions, which cover database configuration, Django settings, and service initialization.
Requires Python >= 3.12. Substantial dependency tree (88 runtime packages) and Django/Celery infrastructure; production deployment typically requires a database backend, Redis for caching, and a web server.
Verify before relying
- Whether the 88 runtime dependencies can be installed cleanly in all target environments without version conflicts.
- Performance characteristics and scalability limits for the number of concurrent translators or projects.
- Whether hosted Weblate service is a viable alternative to self-hosting for specific use cases.
Package facts
| License | GPL-3.0-or-later (copyleft) |
| Python support | supports the current Python release (>=3.12) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 88 — aeidon, ahocorasick-rs, altcha, argon2-cffi-bindings, argon2-cffi, borgbackup, celery, certifi, cffi, charset-normalizer, confusable-homoglyphs, crispy-bootstrap5, cryptography, cssselect, cyrtranslit, dateparser, diff-match-patch, disposable-email-domains, django-appconf, django-celery-beat, django-cors-headers, django-crispy-forms, django-filter, django-otp-webauthn, django-otp, django-redis, Django, djangorestframework-csv, djangorestframework, docutils |
| Maintenance | actively maintained — 7 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 122,713/month — #11,939 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: weblate-2026.8.1-py3-none-any.whl
Keywords: gettext, git, i18n, l10n, mercurial, translate
Tags
More WWW/HTTP packages
urllib3 is an HTTP client library that provides…
permissive · top 100 on PyPI
requestsRequests is a Python HTTP library that…
permissive · top 100 on PyPI
h11h11 is a pure-Python HTTP/1.1 protocol…
permissive · top 100 on PyPI
httpxHTTPX is a fully featured HTTP client library…
permissive · top 100 on PyPI
httpcoreA minimal low-level HTTP client library that…
permissive · top 100 on PyPI
aiohttpaiohttp is an async HTTP client and server…
permissive · top 100 on PyPI
weblate-fontsProvides a curated collection of fonts packaged…
unclear · top 15,000 on PyPI
weblate-language-dataProvides language definitions, plural rules,…
permissive · top 15,000 on PyPI
weblate_schemasProvides JSON schemas that validate Weblate…
permissive · top 15,000 on PyPI
wlcwlc is a command-line client for Weblate's REST…
copyleft · top 15,000 on PyPI
wllegalA Django module providing legal document…
copyleft · top 15,000 on PyPI
translation-finderDiscovers and identifies translation files in…
copyleft · top 15,000 on PyPI
flufl.i18nflufl.i18n provides a high-level API for…
permissive · top 15,000 on PyPI
unicode-segmentation-rsProvides Unicode text segmentation (graphemes,…
unclear · top 15,000 on PyPI
translationstringProvides translation string objects and…
permissive · top 5,000 on PyPI
babelBabel provides internationalization (i18n) and…
permissive · top 1,000 on PyPI