--- id: babelfish version: "0.6.1" license: BSD-3-Clause license_treatment: permissive maintenance: dormant --- # babelfish — A module to work with countries and languages License: permissive · Maintenance: dormant · Downloads: 134.0K/mo ## What it is and what it does BabelFish is a reference library for working with ISO-standardized country, language, and script identifiers in Python. It wraps ISO-3166 (countries), ISO-639-3 (languages), and ISO-15924 (scripts) into Python objects, allowing you to construct and query them by code, name, or other attributes. The library includes built-in converters for common alternate naming schemes (e.g., alpha2, alpha3b, opensubtitles for languages; country names for countries), making it easy to map between different coding systems without maintaining your own lookup tables. Typical use cases include building multilingual applications, normalizing user-supplied language or country inputs, and working with subtitle or media metadata that uses non-standard language codes. The package is lightweight, has no heavy external dependencies, and works across modern Python versions. Use it for: - Normalize user-supplied language codes (e.g., 'en', 'eng', 'English') into a canonical Language object for downstream processing. - Map between different language coding schemes (ISO-639-3, alpha2, OpenSubtitles codes) in subtitle or media applications. - Build locale-aware applications by looking up country and language metadata from ISO codes. - Validate and parse language-country pairs (e.g., Portuguese from Brazil) with script support. - Populate dropdown menus or search filters with standardized country and language names. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. BabelFish provides Python objects for countries, languages, and scripts based on ISO standards, with built-in converters to translate between different naming and coding schemes. Yes, if you need a lightweight, standards-based reference for countries, languages, and scripts. The package is stable, permissively licensed, and has no security vulnerabilities. Install friction is minimal. The main caveat is dormant maintenance—827 days since last release—so if you need active support or expect frequent updates for new Python versions, verify that the current release works with your target environment before committing. ## Install pip install babelfish uv add babelfish poetry add babelfish ## Installing babelfish Before you install: Low install friction with only two lightweight runtime dependencies (importlib-resources and importlib-metadata). Maintenance is dormant—last release was 827 days ago and the last commit was 2025-02-09—but the package is marked Production/Stable and has no known vulnerabilities, suggesting it is feature-complete rather than abandoned. License in practice: Licensed under BSD-3-Clause (permissive), which allows commercial and private use with minimal restrictions; you must include a copy of the license and copyright notice. Quickstart: pip install babelfish import babelfish language = babelfish.Language('eng') country = babelfish.Country('GB') script = babelfish.Script('Hira') Requires Python 3.8 or later (supports up to 3.12). Verify before relying: - Whether the package's dormant maintenance status (827 days since last release) poses a risk for future Python version compatibility or bug fixes. - Performance characteristics when working with large sets of language/country/script conversions. ## Package facts - License: BSD-3-Clause (permissive) - Python support: supports_current - Install friction: low - Maintenance: dormant - Downloads: 134.0K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags ISO language country script codes, language locale converter, country code lookup, ISO-639 ISO-3166 library, multilingual data mapping, language script representation, locale identifier parser, iso-standards, i18n, locale-data [View on SkillFed](https://skillfed.io/packages/babelfish) · [View on PyPI](https://pypi.org/project/babelfish/)