DEV Community

Discussion on: I18N in the Multiverse of Formats

Collapse
 
spock123 profile image
Lars Rye Jeppesen

Imho the built in Angular i18n is far better than any of these. The compile-time translation gives zero overhead and no worries about waiting for language files to be downloaded before instantiating componts (React Suspense springs to mind).

Afaics, all these alternatives are runtime translation if I'm not mistaken?
cheers

Collapse
 
adrai profile image
Adriano Raiano

in theory with javascript, in general there is no compile time at all… but stuff like fbt or js-lingui (for react) is probably near to the compile time topic like angular i18n… (which basically creates a copy of the app for each individual language)

Collapse
 
spock123 profile image
Lars Rye Jeppesen

Sure, Typescript is transpiled, but in this context I mean "build-time". It's is a huge advantage to be able to translate on build-time instead of runtime.

Yes, you technically ship X versions of the code but in practice that's no big deal. One service worker is generated per locale. Having every static translation generated in the build step is something I wish was possible with React/Next as well. It feels like going a step back, having to resort to runtime translations.

That's what initially had to use in Vue/Angular, until Angular's i18n had matured enough to be used build-time.

Thanks for your answer, I'm on a learning experience with Next so I'm not familiar with these things yet, but working on it:)

Thread Thread
 
adrai profile image
Adriano Raiano

fyi: there is also SSG: dev.to/adrai/static-html-export-wi...

Collapse
 
adrai profile image
Adriano Raiano