Every Astro i18n library you can install today hits the same four walls. I tried five before realizing I needed a different shape entirely.
Wrote it up - 7 maturity levels, my honest take on every library, the edge-native pattern at the end.
https://t.co/24Auataxj5
@aymericzip Thanks Aymeric - appreciated, especially coming from someone shipping Intlayer. Different routes through the same problem. Both stories are useful in the ecosystem. Happy to compare notes anytime.
Every Astro i18n library you can install today hits the same four walls. I tried five before realizing I needed a different shape entirely.
Wrote it up - 7 maturity levels, my honest take on every library, the edge-native pattern at the end.
https://t.co/24Auataxj5
Old habits die hard. Coming from traditional i18n libs, I instinctively kept my locales JSONs inside the src directory in the astro-edgekits-core.
But with an Edge-native architecture where translations (data) and logic (code) are strictly separated, there's zero need for that. They never hit the client bundle anyway, but moving them to the project root makes the architecture much cleaner.
Will update the repo soon! π #i18n #astrobuild #Cloudflare #webdev
I built FlareCalc, the ultimate Cloudflare cost calculator to help you estimate spend πΈ
There is no Cloudflare cost calculator I can find that covers the entire developer platform, and the ones out there are just for Workers and use outdated pricing
Incredibly honored to see my article featured in the official @astrodotbuild monthly digest! π
I spent a lot of time figuring out how to stop shipping heavy i18n JavaScript to the client. The solution? Moving the entire localization logic to the Edge using Astro and Cloudflare Workers.
Turns out, Edge-native i18n is the way to go. Huge thanks to the Astro team for the shoutout! π
You can check out the full guide here:
https://t.co/84O1AJ9bOG
https://t.co/asvDAo8x5O
#webdev #astrobuild #cloudflare #webperf
The biggest trap in client-side localization? Form validation. π
If you use react-hook-form + zod, translating errors usually means shipping massive JSON dictionaries directly to the browser. Your React bundle bloats, TBT spikes, and Web Vitals tank.
Hereβs how we fix it in Part 2 of the Edge-Native i18n guide π
I wrote a massive deep-dive on how to build this exact architecture.
If you want to master Zero-JS React localization and Astro Actions, check out the full post!
Would love to hear your feedback! π€
π Article: https://t.co/RfSSaZiNz4
#AstroJS#CloudflareWorkers#ReactJS #WebPerf
The biggest trap in client-side localization? Form validation. π
If you use react-hook-form + zod, translating errors usually means shipping massive JSON dictionaries directly to the browser. Your React bundle bloats, TBT spikes, and Web Vitals tank.
Hereβs how we fix it in Part 2 of the Edge-Native i18n guide π
But what about dynamic User-Generated Content (UGC)?
Storing localized data in @CloudflareDev D1 requires the right schema. We skip the "Wide Table" anti-pattern and use JSON columns with @DrizzleORM.
The result? Blazing-fast, single-read queries on the Edge with Zero JOINs. β‘
After trying dozens of tech stacks over the years, I finally found the one I truly fell in love with: @astrodotbuild + @CloudflareDev. π§‘
Huge thanks to @kristianf_ and @craigsdennis - your videos and open-source repos were a massive help on this journey! π
So, finally, I've started my first project with this stack. π§΅π
I wrote a deep-dive article on how to build this architecture and open-sourced the starter template so you don't have to build it from scratch.
Would love to hear any feedback from the community!
π Article: https://t.co/84O1AJ9bOG
π» GitHub: https://t.co/63omGAZmIL
#AstroJS #Cloudflare #WebDev
After trying dozens of tech stacks over the years, I finally found the one I truly fell in love with: @astrodotbuild + @CloudflareDev. π§‘
Huge thanks to @kristianf_ and @craigsdennis - your videos and open-source repos were a massive help on this journey! π
So, finally, I've started my first project with this stack. π§΅π
So I moved the logic entirely to the network edge.
β‘οΈ Astro Middleware handles the routing
β‘οΈ Cloudflare KV stores the translations
β‘οΈ Cache API serves them instantly
The result? A true Zero-JS i18n architecture. The browser gets pure, translated HTML.