App translations

Generated apps can speak multiple languages: translation keys live alongside code, and visitors switch locales via a language switcher with URL prefixes on hosted routes.

Platform vs app locale

Your builder UI language is controlled separately (Settings). App translations affect only the published project: strings resolved at runtime through the public translations API.

translations-switcher

Placeholder: switcher changing copy live on a page.

Keys and hooks

The assistant typically adds a useTranslations helper and JSON-like dictionaries per language. Prefer stable keys (nav.home, cta.signup) so diffs stay small when copy changes.

Tip:
Ask the assistant to extract hard-coded strings when retrofitting older pages.

Hosted URL prefixes

Published apps and share links accept leading language segments such as /en, /pt, /es, and /fr. Middleware rewrites to the correct bundle entry while preserving deep links.

Warning:
Only enable languages you actually ship; partial dictionaries fall back to your default locale.