v0.5.0
·
466 commits
to main
since this release
Immutable
release. Only release title and notes can be modified.
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
localeprop onCubeProvider— no remount required - Type-safe translation keys:
TranslationKeyunion 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
translationsprop toCubeProviderfor per-app customisation - Server-side locale:
X-DC-Localeheader propagated through all adapters intoSecurityContext - Crowdin integration:
npm run i18n:push/i18n:pullfor translation management - Crowdin In-Context editor: Live translation overlay in the dev site
- Debug mode:
debugI18nprop onCubeProviderwarns 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.