Fluent (.ftl) — English
Mozilla Fluent SAMPLE catalog (English) with placeholders and plural select — for Fluent parsers and CAT tools.
# Novus SAMPLE Fluent catalog (en)
greeting = Hello
welcome = Welcome, { $name }
save = Save
cancel = Cancel
items-count =
{ $count ->
[0] No items
[one] { $count } item
*[other] { $count } items
}
Specifications
- Format
- Fluent
- Locale
- en
- Keys
- 5
- Wave
- G
What is a .ftl file?
Fluent (.ftl) is Mozilla's localization file format for natural-sounding translations with placeholders, plurals, and selectors. Catalogs are plain text and designed for readable, maintainable UI strings.
How to use this file
Use a SAMPLE .ftl catalog to test Fluent parsers, plural/select resolution, and CAT tool import/export against known keys.
How to use this file for testing
“Fluent (.ftl) — English” is a deterministic Novus Examples fixture for Internationalization, Localization catalogs, Encoding detection. Parallel text and accented, multi-script content — for testing translation pipelines, Unicode handling, and localization tooling.
Documented properties for this file: Fluent. Compare results against paired or grouped companions on this page when present (clean↔damaged, searchable↔scanned, or format twins) so scores stay reproducible across runs.
Download the file once, keep the path stable in CI or local scripts, and treat the spec table as the contract: dimensions, seeds, field lists, and roles are intentional. Corrupt or invalid samples are labelled as such — expect parsers to fail loudly rather than silently accept them.
Translation-catalog fixtures carry the same message set across formats, each with its native placeholder syntax. Test your i18n loader, catalog converter, or translation-memory tool, and use the RTL and CJK variants to check bidirectional text and Unicode handling.
Load the catalog with your i18n framework and verify placeholder interpolation and plural handling; the RTL and CJK variants exercise bidirectional text and font fallback.
Code examples
from fluent.syntax import parse # pip install fluent.syntax
res = parse(open("messages-en.ftl", encoding="utf-8").read())
for entry in res.body:
if getattr(entry, "id", None):
print(entry.id.name)Related files
- csvBilingual CSV — English→Arabic RTLBilingual EN→AR RTL CSV SAMPLE for spreadsheet CAT and RTL review tools.

- csvBilingual CSV — English→SpanishBilingual EN→ES CSV SAMPLE for spreadsheet-based localization workflows.

- jsonCrowdin-Style Export — FrenchCrowdin-shaped SAMPLE French bilingual export for TMS round-trip tests.

- jsonCrowdin-Style Export — SpanishCrowdin-shaped SAMPLE bilingual export JSON for localization TMS importers.

- jsonICU MessageFormat JSON — ArabicICU MessageFormat SAMPLE JSON (Arabic) with plural/select patterns for i18n runtimes.

- jsonICU MessageFormat JSON — ChineseICU MessageFormat SAMPLE JSON (Chinese) with plural/select patterns for i18n runtimes.

Generated by generation/localization_wave_g.py. Free for any use, no attribution required — license.