Skip to content

Remote translations

Release words with the same care as code.

Update localized product copy, preview every fallback, then publish one recoverable release.

One key. Every market. One release.

Draft copy by locale without exposing unfinished work. Production changes only when the complete environment is ready.

The editor shows what will really ship.

Environment pills, locale states, ICU validation, and release history keep product and engineering on the same page.

CheckoutProduction
pay_nowPay nowPagar agora今すぐ支払う items{count, plural, one {# item} other {# items}}{count, plural, one {# item} other {# itens}}Fallback: en
3 saved localesReady to publish
Checkout.tsx
const label = await flagdash.translation(
  "checkout.pay_now",
  { locale: "pt-BR",
    defaultValue: "Pay now" }
)

// "Pagar agora"

Small SDK call. It always returns a string.

Messages format locally, catalogs stay cached, and your bundled default remains the last line of defense.

RealtimeRefresh on published releases Private draftsNever served to SDK keys ICU messagesVariables, plurals, and selects Offline-safeStale cache and app fallback

Fallback is visible, ordered, and boring.

A regional locale checks its language parent, then the project default. If nothing matches, your application keeps its own safe copy.

pt-BRrequestedptlanguageenproject defaultPay nowapp fallback

Your copy deserves a release button.

Start with one namespace, one locale, and a fallback already inside your app.