Skip to content

v0.5.0

Choose a tag to compare

@cliftonc cliftonc released this 01 Apr 04:55
· 466 commits to main since this release
Immutable release. Only release title and notes can be modified.
v0.5.0
7c5242e

Internationalisation (i18n)

drizzle-cube now ships with full internationalisation support. All user-visible text across 170+ components is translatable.

Highlights

  • Built-in locales: en-GB (default), en-US, and nl-NL (Dutch) included out of the box
  • Dynamic locale switching: Change locale prop on CubeProvider — no remount required
  • Type-safe translation keys: TranslationKey union derived from en.json catches typos at compile time
  • Lazy-loaded locales: Only the active locale is fetched at runtime (en-GB bundled statically)
  • Translation overrides: Pass custom translations prop to CubeProvider for per-app customisation
  • Server-side locale: X-DC-Locale header propagated through all adapters into SecurityContext
  • Crowdin integration: npm run i18n:push / i18n:pull for translation management
  • Crowdin In-Context editor: Live translation overlay in the dev site
  • Debug mode: debugI18n prop on CubeProvider warns on missing translation keys
  • Chart configs store keys, components resolve: Translation happens at render time for proper locale reactivity

Breaking Changes

None — locale and translations are optional props with backwards-compatible defaults.

Migration

No changes required. Existing apps continue to work in en-GB. To enable i18n:

<CubeProvider locale="nl-NL" ...>

See the Internationalisation guide for full documentation.