All Projects → facebook → Fbt

facebook / Fbt

Licence: mit
A JavaScript Internationalization Framework

Programming Languages

javascript
184084 projects - #8 most used programming language
CSS
56736 projects
java
68154 projects - #9 most used programming language
ruby
36898 projects - #4 most used programming language
Objective-C++
1391 projects
objective c
16641 projects - #2 most used programming language

Projects that are alternatives of or similar to Fbt

Elefant
Elefant, the refreshingly simple PHP CMS and web framework.
Stars: ✭ 188 (-94.87%)
Mutual labels:  i18n, framework, internationalization
python-fluent
Python implementation of Project Fluent
Stars: ✭ 142 (-96.13%)
Mutual labels:  i18n, internationalization
crates
🌎 A tool to generate your locale files compatible with i18n.
Stars: ✭ 52 (-98.58%)
Mutual labels:  i18n, internationalization
Mojito
An automation platform that enables continuous localization.
Stars: ✭ 256 (-93.02%)
Mutual labels:  i18n, internationalization
cosmopolite
Typesafe internationalization for Scala
Stars: ✭ 15 (-99.59%)
Mutual labels:  i18n, internationalization
rosetta
A blazing fast internationalization (i18n) library for Crystal with compile-time key lookup.
Stars: ✭ 23 (-99.37%)
Mutual labels:  i18n, internationalization
labels
Bolt Labels extension - Translatable labels for Bolt
Stars: ✭ 18 (-99.51%)
Mutual labels:  i18n, internationalization
tr4n5l4te
Use Google Translate without an API key.
Stars: ✭ 32 (-99.13%)
Mutual labels:  i18n, internationalization
I18n4go
i18n tooling for Golang
Stars: ✭ 264 (-92.8%)
Mutual labels:  i18n, internationalization
Eo Locale
🌏Internationalize js apps 👔Elegant lightweight library based on Internationalization API
Stars: ✭ 290 (-92.09%)
Mutual labels:  i18n, internationalization
Js Lingui
🌍📖 A readable, automated, and optimized (5 kb) internationalization for JavaScript
Stars: ✭ 3,249 (-11.42%)
Mutual labels:  i18n, internationalization
jekyll-skeleton
Scaffolding to start with a Jekyll website
Stars: ✭ 27 (-99.26%)
Mutual labels:  i18n, internationalization
GetCurrency
List all currencies available in NSLocale programmatically using swift 3
Stars: ✭ 18 (-99.51%)
Mutual labels:  i18n, internationalization
plate
Internationalization library for Python
Stars: ✭ 31 (-99.15%)
Mutual labels:  i18n, internationalization
wlc
Weblate command line client
Stars: ✭ 22 (-99.4%)
Mutual labels:  i18n, internationalization
i18n
Package i18n is for app Internationalization and Localization.
Stars: ✭ 79 (-97.85%)
Mutual labels:  i18n, internationalization
Gotext
Go (Golang) GNU gettext utilities package
Stars: ✭ 292 (-92.04%)
Mutual labels:  i18n, internationalization
inlang
Open Source Localization Solution for Software.
Stars: ✭ 160 (-95.64%)
Mutual labels:  i18n, internationalization
Angular-Gulp-Boilerplate
Clean but full-featured AngularJS boilerplate using Gulp workflow and best practices
Stars: ✭ 30 (-99.18%)
Mutual labels:  i18n, internationalization
Getx
Open screens/snackbars/dialogs/bottomSheets without context, manage states and inject dependencies easily with Get.
Stars: ✭ 5,578 (+52.07%)
Mutual labels:  framework, internationalization

Twitter Follow Discord Chat Facebook Group

FBT

FBT is an internationalization framework for JavaScript designed to be not just 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 See our React Native demo here

Requirements

Building the fbt library

git clone [email protected]:facebook/fbt.git
cd fbt
yarn install

NOTE: if you make changes to the fbt runtime that you'd like to test in the demo-app, be sure to run this command to rebuild the JS code:

yarn build-runtime

Using fbt

See how to use the source directly with Babel and Webpack in our demo-app.

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 translated 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://facebook.github.io/fbt

Join the fbt community

See the CONTRIBUTING file for how to help out.

Change log

See CHANGELOG.

List of npm modules published from this repo:

How to release a new npm version

# Go to the module's folder (where package.json is located)
cd fbt-runtime/
# or
# cd packages/babel-plugin-fbt/
# cd packages/babel-plugin-runtime/

# publishes to npm and push new git tag to Github
yarn publish_to_npm_latest

License

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

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].