translation-finder
A translation file finder used in Weblate.
What it is and what it does
translation-finder is a library that automatically detects and catalogs translation files within a repository by recognizing patterns and metadata from popular localization frameworks. It powers Weblate's file discovery mechanism and can operate on both file listings and live filesystem access, with the latter enabling more accurate detection when encoding or syntax validation is needed.
The package returns structured match objects describing each discovered translation file—including its format, file mask pattern, template file (if applicable), and metadata about which discovery method found it and its priority ranking. It can be used programmatically from Python or via a command-line tool, making it useful both as a library component and a standalone utility for inspecting what translation files exist in a project.
Use it for:
- Automatically map translation files in a monorepo to feed into a continuous localization workflow.
- Validate that a project's translation structure matches expected patterns before syncing to a translation management platform.
- Build tooling that needs to enumerate all localizable resources without hardcoding file paths.
- Detect encoding issues or malformed translation files by combining pattern matching with filesystem inspection.
- Migrate translation infrastructure by discovering all existing translation assets before moving them to a new system.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Discovers and identifies translation files in repositories by scanning for patterns used by common localization frameworks like Gettext, Android resources, and Transifex.
Yes. The package is actively maintained, has no known vulnerabilities, low install friction, and fills a specific niche: discovering translation files in repositories. It's production-stable and backed by Weblate's real-world use. The GPL-3.0-or-later copyleft license is a consideration for proprietary projects, but poses no barrier for open-source work.
Install
translation-finder on PyPI
pip
pip install translation-finderuv
uv add translation-finderpoetry
poetry add translation-finderInstalling translation-finder
Before you install
Low friction install with three straightforward dependencies. Actively maintained with a release 11 days ago and commits as recent as 2026-08-14, supporting current Python versions (3.11–3.14).
License in practice
GPL-3.0-or-later copyleft license means any derivative work or distribution must also be open source under compatible terms; suitable for open-source projects but requires careful consideration in proprietary contexts.
Quickstart
pip install translation-finder
from translation_finder import discover
results = discover("path/to/repo")
for result in results:
print(result.match, result.meta)
Requires Python 3.11 or later.
Verify before relying
- Whether filesystem access is required for all use cases or only for encoding/syntax detection in edge cases.
- Performance characteristics when scanning large repositories with many translation files.
- Exact list of supported translation file formats beyond Gettext, Android, and Transifex.
Package facts
| License | GPL-3.0-or-later (copyleft) |
| Python support | supports the current Python release (>=3.11) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 3 — charset-normalizer, ruamel.yaml, weblate-language-data |
| Maintenance | actively maintained — 11 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 98,960/month — #13,047 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: translation_finder-3.4.0-py3-none-any.whl
Keywords: i18n, l10n, gettext, weblate, translate
Tags
More Utilities packages
Converts domain names between Unicode and…
permissive · top 100 on PyPI
charset-normalizerDetects and normalizes text encoding from…
permissive · top 100 on PyPI
setuptoolsSetuptools is a Python build backend and…
permissive · top 100 on PyPI
pluggyPluggy provides a plugin system that lets you…
permissive · top 100 on PyPI
PygmentsPygments is a syntax highlighter that colorizes…
permissive · top 100 on PyPI
sixSix provides utility functions to write Python…
permissive · top 100 on PyPI
compare-localesLints Mozilla localization files to find…
copyleft · top 15,000 on PyPI
weblate-fontsProvides a curated collection of fonts packaged…
unclear · top 15,000 on PyPI
weblateWeblate is a web-based continuous localization…
copyleft · 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
wllegalA Django module providing legal document…
copyleft · top 15,000 on PyPI
wlcwlc is a command-line client for Weblate's REST…
copyleft · top 15,000 on PyPI
polibpolib reads, writes, and manipulates gettext…
permissive · top 5,000 on PyPI
translate-toolkitTranslate Toolkit converts, validates, and…
copyleft · top 15,000 on PyPI
unicode-segmentation-rsProvides Unicode text segmentation (graphemes,…
unclear · top 15,000 on PyPI