awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
facebookincubator avatar

facebookincubator/fbtArchived

0
View on GitHub↗
3,884 stars·177 forks·JavaScript·MIT·14 viewsfacebook.github.io/fbt↗

Fbt

This project is a JavaScript internationalization framework designed to manage the lifecycle of multilingual user interfaces. It provides a system for embedding translatable strings directly into source code, enabling developers to maintain context while building applications that support multiple languages and regional formats.

The framework distinguishes itself through a grammatical localization engine that handles complex pluralization and gender variations. By utilizing programmatic rules and placeholders, it ensures that sentences remain grammatically correct across different languages. The system also supports dynamic locale switching, allowing applications to update translation payloads and re-render content at runtime without requiring a full page reload.

The project includes a comprehensive suite of tools for automating the localization pipeline. This includes static analysis utilities that scan source code to extract translatable strings, as well as compilers that transform these strings and translation data into optimized binary structures for efficient runtime resolution.

Features

  • JavaScript Internationalization Libraries - Provides a comprehensive framework for managing and translating text strings within JavaScript applications.
  • Grammar Rule Specification - Uses programmatic rules and placeholders to construct grammatically correct sentences handling pluralization and gender variations.
  • Dynamic Locale Switching - Updates the active translation payload and locale context at runtime to re-render the user interface in a different language.
  • Translation Message Extraction - Scans source code during the build process to identify and collect translatable strings into a centralized registry.
  • Translation Tools - Automates the collection of translatable source text and generates optimized translation payloads for runtime resolution.
  • Automated String Extraction - Automates the scanning of source code to export translatable strings and metadata into structured formats.
  • Translation File Generators - Combines extracted source text with translation files to create optimized data structures for runtime resolution.
  • Compile-Time Code Generation - Transforms extracted text and translation data into optimized binary structures to minimize runtime overhead.
  • Locale Translation Bundles - Maps source text to pre-compiled translation tables at runtime to serve the appropriate language version.
  • Multilingual Text Management - Enables embedding translatable text directly into source code to maintain context for multilingual user interfaces.
  • View Context Injections - Updates the active translation state at runtime to re-render the user interface without requiring a full page reload.
  • Localization Pipeline Automation - Automates the extraction of strings and integration of localized content to streamline the translation and deployment process.
  • String Translations - Allows developers to embed translatable strings directly within source code to maintain context and simplify development.
  • Grammatical Localization Rules - Composes context-aware UI text that handles complex pluralization and grammatical variations across different languages.
  • Runtime Locale Loaders - Maps source identifiers to pre-compiled translation tables at execution time to serve localized content.
  • Internationalization - Internationalization framework for JS.

Star history

Star history chart for facebookincubator/fbtStar history chart for facebookincubator/fbt

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Projects sharing features with Fbt

These projects share indexed features with Fbt. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • lingui/js-linguilingui avatar

    lingui/js-lingui

    5,786View on GitHub↗

    Lingui is a JavaScript internationalization library that provides a framework-agnostic core with bindings for React, SolidJS, Svelte, Astro, and other JavaScript frameworks. It operates through a compile-time message extraction pipeline that scans source files for translatable strings, generates standard PO, JSON, or CSV catalog files, and compiles them into optimized JavaScript modules for production deployment. The library uses macro-based message definition to wrap translatable text in source code while preserving context for extraction, and includes a plural rule engine that automatically

    TypeScript
    View on GitHub↗5,786
  • globalizejs/globalizeglobalizejs avatar

    globalizejs/globalize

    4,838View on GitHub↗

    Globalize is a JavaScript internationalization library and Unicode CLDR localization engine. It provides a toolkit for formatting dates, numbers, and currencies using the Unicode Common Locale Data Repository and IANA time zones. The project features a build-time localization compiler that precompiles rules into static formatters to reduce runtime overhead and bundle size. It includes a system for parsing and formatting complex strings using the ICU MessageFormat syntax, supporting variables, pluralization, and gender inflections. The library covers a broad surface of localization capabiliti

    JavaScriptcldrcldr-datacldr-json
    View on GitHub↗4,838
  • jquery/globalizejquery avatar

    jquery/globalize

    4,840View on GitHub↗

    Globalize is a JavaScript internationalization library that uses Unicode Common Locale Data Repository JSON data to provide localization services. It functions as a locale-aware string formatter and a system for transforming dates, times, currencies, and numeric values into strings based on specific locale patterns. The library includes a precompiled localization engine that generates optimized formatting functions during the build process. This approach reduces runtime overhead and removes the requirement to load raw locale data at execution. The project covers a broad range of internationa

    JavaScript
    View on GitHub↗4,840
  • fnando/i18n-jsfnando avatar

    fnando/i18n-js

    3,808View on GitHub↗

    This project is a localization library designed to synchronize translation data between server-side backends and client-side JavaScript environments. It provides a unified framework for managing multi-language support, ensuring that localized strings and translation keys remain consistent across the entire web stack. The library distinguishes itself by bridging the gap between server-side definitions and frontend interfaces, specifically facilitating the export of translation files from Ruby on Rails applications into formats compatible with JavaScript. It includes automated utilities for tra

    Ruby
    View on GitHub↗3,808
Compare all 30 related projects→

Frequently asked questions

What does facebookincubator/fbt do?

This project is a JavaScript internationalization framework designed to manage the lifecycle of multilingual user interfaces. It provides a system for embedding translatable strings directly into source code, enabling developers to maintain context while building applications that support multiple languages and regional formats.

What are the main features of facebookincubator/fbt?

The main features of facebookincubator/fbt are: JavaScript Internationalization Libraries, Grammar Rule Specification, Dynamic Locale Switching, Translation Message Extraction, Translation Tools, Automated String Extraction, Translation File Generators, Compile-Time Code Generation.

Which projects share features with facebookincubator/fbt?

Projects with overlapping indexed features include: lingui/js-lingui — Lingui is a JavaScript internationalization library that provides a framework-agnostic core with bindings for React,… globalizejs/globalize — Globalize is a JavaScript internationalization library and Unicode CLDR localization engine. It provides a toolkit for… jquery/globalize — Globalize is a JavaScript internationalization library that uses Unicode Common Locale Data Repository JSON data to… fnando/i18n-js — This project is a localization library designed to synchronize translation data between server-side backends and… airbnb/polyglot.js — Polyglot.js is a JavaScript internationalization library and client-side translation framework. It provides a system… ngx-translate/core — This is an internationalization framework for Angular applications. It provides a system for managing multilingual…