oslo.i18n
Oslo i18n library
What it is and what it does
oslo.i18n is a library from the OpenStack project that simplifies internationalization (i18n) work in Python applications. It wraps and extends standard translation utilities to make it easier to mark strings for translation and manage multiple languages in a codebase. The library is designed for applications that need to support users in different locales and languages, providing a consistent interface for marking translatable strings and accessing translations at runtime.
The package is part of the OpenStack infrastructure and is actively maintained. It has minimal dependencies—only pbr—and supports modern Python versions from 3.11 onward. It's typed, making it suitable for projects that use static type checking. The library is permissively licensed under Apache-2.0, so it can be used freely in both open-source and proprietary projects.
Use it for:
- Mark user-facing strings in a web application for translation into multiple languages.
- Build OpenStack-compatible services that need consistent i18n handling across components.
- Add multi-language support to a library or framework without heavy translation infrastructure.
- Integrate translation workflows into an existing Python project using standard gettext conventions.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
oslo.i18n provides utilities for handling internationalization and translation of text strings in Python applications, with support for multiple languages and locales.
Yes, if you are building an OpenStack service or need a lightweight, actively maintained i18n utility for a Python application. The low install friction, permissive license, and modern Python support make it a straightforward choice. If you need advanced translation features (pluralization rules, context-aware translations, or backend flexibility), verify that oslo.i18n provides them before committing.
Install
oslo-i18n on PyPI
pip
pip install oslo-i18nuv
uv add oslo-i18npoetry
poetry add oslo-i18nInstalling oslo.i18n
Before you install
Low install friction with a single lightweight runtime dependency (pbr). Active maintenance status with a recent release 35 days ago. Supports current Python versions (3.11–3.14) and is typed.
License in practice
Apache-2.0 permissive license allows use in most projects without significant restrictions, including commercial and proprietary applications.
Quickstart
pip install oslo.i18n
from oslo_i18n import _
translated_text = _("Hello, world!")
Requires Python 3.11 or later.
Verify before relying
- Specific translation backend support (gettext, Babel integration, or other frameworks) not detailed in the fact sheet.
- Whether the package provides locale negotiation, pluralization, or context-aware translation features.
- Performance characteristics when handling large translation catalogs or many concurrent translations.
Package facts
| License | Apache-2.0 (permissive) |
| Python support | supports the current Python release (>=3.11) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 1 — pbr |
| Maintenance | actively maintained — 35 days since the last release |
| First released | |
| Downloads | 1,719,883/month — #3,619 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: oslo_i18n-6.9.0-py3-none-any.whl
Tags
More Linguistic packages
Detects and normalizes text encoding from…
permissive · top 100 on PyPI
tiktokentiktoken is a fast BPE tokenizer that converts…
permissive · top 1,000 on PyPI
chardetDetects character encoding and language in byte…
permissive · top 1,000 on PyPI
text-unidecodeConverts Unicode text to ASCII by…
copyleft · top 1,000 on PyPI
larkLark is a parsing library that builds abstract…
permissive · top 1,000 on PyPI
tree-sitterPython bindings to the tree-sitter parsing…
permissive · top 1,000 on PyPI
babelBabel provides internationalization (i18n) and…
permissive · top 1,000 on PyPI
django-statici18nCompiles Django's JavaScript…
permissive · top 15,000 on PyPI
flufl.i18nflufl.i18n provides a high-level API for…
permissive · top 15,000 on PyPI
i18nicei18nice provides internationalization (i18n)…
permissive · top 15,000 on PyPI
python-i18nProvides internationalization (i18n)…
permissive · top 15,000 on PyPI
edx-i18n-toolsCommand-line tool for extracting, compiling,…
permissive · top 15,000 on PyPI
zope.i18nProvides internationalization and localization…
unclear · top 15,000 on PyPI
oslo.configParses command-line arguments and .ini-style…
permissive · top 5,000 on PyPI
oslo.utilsoslo.utils provides common utility functions…
permissive · top 5,000 on PyPI
oslo.contextoslo.context provides utilities to store and…
permissive · top 5,000 on PyPI