/fbt

A JavaScript Internationalization Framework

Primary LanguageJavaScriptMIT LicenseMIT

FBT

FBT is an internationalization framework for JavaScript designed to be both powerful and flexible, but also simple and intuitive. It helps with the following:

  • Organizing your source text for translation
  • Composing grammatically correct translatable UI
  • Eliminating verbose boilerplate for generating UI

Examples

See our demo here

Requirements

Building fbt

git clone git@github.com:facebookincubator/fbt.git
cd fbt
yarn install

Installing fbt

We will make the transform and runtime installable as an npm package soon. Until then, See how to use the source directly with Babel and Webpack in our demo-app:

cd demo-app # from fbt repo
yarn install
yarn manifest
yarn collect-fbts
yarn translate-fbts
yarn start

How FBT works

FBT works by transforming your <fbt> and fbt(...) constructs via Babel plugins. These plugins serve to extract strings from source and lookup translate payloads generated at build-time. FBT creates tables of all possible variations for the given fbt phrase and accesses this at runtime

Full documentation

https://facebookincubator.github.io/fbt

Join the fbt community

See the CONTRIBUTING file for how to help out.

License

FBT is MIT licensed, as found in the LICENSE file.