fluent.syntax
Localization library for expressive translations.
Decision gist · record as of 2026-08-14
Yes, if you need to work with Fluent localization files programmatically. The package is actively maintained, has no known vulnerabilities, installs cleanly, and is permissively licensed. It is the standard tool for Fluent tooling in Python. Not necessary if you only consume pre-built Fluent translations at runtime.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Low friction install with a single pure-Python wheel dependency (typing-extensions).
- Actively maintained as of June 2026 with steady development history since early 2019.
License · maintenance · safety
APL 2 (permissive) — Licensed under Apache License 2.0 (permissive), allowing commercial and private use with minimal restrictions.
last release 2023-03-16 (1247 days) · last repo commit 2026-06-01 · 244 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 804,824 downloads/mo, #5,016 on PyPI
Alternatives
Verify before relying
pip install fluent.syntax
from fluent.syntax import parse, serialize
resource = parse("a-key = String to localize")
resource.body[0].value.elements[0].value = "Localized string"
print(serialize(resource))- Whether the package's 'Alpha' status reflects incomplete features or is a legacy classifier from early releases.
- Current Python version support beyond the 3.6–3.9 range listed in classifiers.
What it is and what it does
fluent.syntax is a Python library for working with Fluent, a localization file format designed for expressive translations. It provides a parser to read Fluent files into an abstract syntax tree, a serializer to write trees back to Fluent syntax, and traversal utilities (Visitor and Transformer) for programmatic manipulation of localization messages. The package is built for developers who need to build tooling around Fluent rather than end-user localization; it exposes the full AST so you can inspect and modify message structure directly.
The library has a single runtime dependency (typing-extensions) and installs as a pure-Python wheel with low friction. It is actively maintained and has been in development since early 2019, with a stable API suitable for production use in localization pipelines, message transformation scripts, or Fluent-aware build tools.
Use it for
- Parse and validate Fluent localization files in a build or CI pipeline.
- Programmatically transform or migrate Fluent messages between formats or structures.
- Build editor or IDE tooling that understands Fluent syntax and AST structure.
- Extract and analyze localization metadata from Fluent files for reporting or auditing.
- Serialize modified message trees back to Fluent format after programmatic edits.
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you need to work with Fluent localization files programmatically.
The package is actively maintained, has no known vulnerabilities, installs cleanly, and is permissively licensed. It is the standard tool for Fluent tooling in Python. Not necessary if you only consume pre-built Fluent translations at runtime.
Install
fluent-syntax on PyPI
Before you install
Low friction install with a single pure-Python wheel dependency (typing-extensions). Actively maintained as of June 2026 with steady development history since early 2019.
License in practice
Licensed under Apache License 2.0 (permissive), allowing commercial and private use with minimal restrictions.
Quickstart
pip install fluent.syntax
from fluent.syntax import parse, serialize
resource = parse("a-key = String to localize")
resource.body[0].value.elements[0].value = "Localized string"
print(serialize(resource))
Verify before relying
- Whether the package's 'Alpha' status reflects incomplete features or is a legacy classifier from early releases.
- Current Python version support beyond the 3.6–3.9 range listed in classifiers.
Package facts
| License | APL 2 permissive |
| Python support | Not specified |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | 1 packagetyping-extensions |
| Maintenance | Actively maintained 1,247 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 804,824 / month, #5,016 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 3 - AlphaIntended Audience :: DevelopersLicense :: OSI Approved :: Apache Software LicenseProgramming Language :: Python :: 3 :: OnlyProgramming Language :: Python :: 3.6Programming Language :: Python :: 3.7Programming Language :: Python :: 3.8Programming Language :: Python :: 3.9 |
Evidence: fluent.syntax-0.19.0-py2.py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “fluent localization parser”
- fluent.syntaxParse, write, and transform Fluent localization files with built-in…
- fluent.pygmentsAdds syntax highlighting support for Fluent localization files to…
- polibpolib reads, writes, and manipulates gettext translation files (PO,…
Give your agent the search over MCP, or paste the wish link into any chat.
More Linguistic packages
Detects and normalizes text encoding from unknown or ambiguous sources, supporting all IANA character sets that Python's core library provides codecs for, with the ability to register custom codecs.
tiktoken is a fast BPE tokenizer that converts text into token sequences compatible with OpenAI models, supporting multiple encoding schemes including o200k_base and model-specific encodings.
Install it if you work with OpenAI APIs or need to understand token boundaries in GPT-family models.
Detects character encoding and language in byte sequences with high accuracy, supporting 99 encodings and returning confidence scores, language tags, and MIME types.
Install it if you need to detect character encoding or language in byte data; the rewrite makes it substantially faster and more accurate than its predecessors.
Converts Unicode text to ASCII by transliterating non-ASCII characters into their closest ASCII equivalents, with no runtime dependencies.
However, if transliteration quality or ongoing maintenance matters, consider unidecode instead despite its GPL-only license.
Lark is a parsing library that builds abstract syntax trees from context-free grammars, supporting multiple parsing algorithms (Earley, LALR(1), CYK) with automatic line and column tracking.
Python bindings to the tree-sitter parsing library, enabling incremental parsing and syntax tree analysis for source code.
See also fluent.pygments · babel · fugue-sql-antlr · translate-toolkit · ansys-api-fluent · surer · ResourceBundle · ansys-fluent-core · fluent-logger