Internationalised Web Apps: i18n Architecture That Goes Beyond Translated Strings
True internationalisation is not a translation layer on top of an English-first application. It is an architectural discipline that affects routing, layout direction, content negotiation, date and currency formatting, and the way your application loads and renders for users in different locales. A web application built without i18n architecture will accumulate workarounds — hardcoded LTR assumptions, locale-specific conditionals scattered across components, date formatting that breaks in Japanese, and URL structures that cannot accommodate language prefixes without breaking existing links. We build web applications where internationalisation is the architecture, not an addition to it.
What i18n-First Architecture Means in Practice
An i18n-first web application handles the following concerns at the architectural level, not as feature-level patches:
- Locale-Aware Routing: URL structures that support language prefixes (/en/dashboard, /de/dashboard, /ar/dashboard) with proper canonical tags, hreflang annotations, and search engine discoverability per locale. The routing layer negotiates locale from URL, cookie, browser preference, or user profile — in a defined priority order.
- Bidirectional Layout: RTL support for Arabic, Hebrew, Farsi, and Urdu is not a CSS override — it is a layout system that mirrors the entire interface correctly, including navigation flow, form alignment, icon directionality, and component composition order. We use CSS logical properties and a directional token system that eliminates LTR assumptions from the codebase.
- ICU Message Format: Translation strings use the ICU message format standard, which handles pluralisation rules (which differ significantly between languages — Arabic has six plural forms), gender agreement, and variable interpolation without developer intervention per language. This means your translation team works with a standard format and your developers never write language-specific conditional logic.
- CLDR-Based Formatting: Dates, numbers, currencies, and units are formatted using the Unicode CLDR dataset through the Intl API — so that 1,234.56 displays as 1.234,56 in Germany and 1 234,56 in France without custom formatting code per locale.
Regional CDN and Performance
A web application serving users in London, Tokyo, and Sao Paulo simultaneously cannot rely on a single-origin server. We configure regional edge delivery that serves static assets, pre-rendered pages, and API responses from the edge location closest to each user. For Next.js applications, this means ISR (Incremental Static Regeneration) with regional cache invalidation, edge middleware for locale detection, and origin routing that directs dynamic requests to the nearest regional backend.
Performance budgets are set per region, not globally. A 200ms TTFB target in Western Europe might translate to a 350ms target in Southeast Asia — and we design the infrastructure to meet each target, rather than optimising for one region and accepting degradation elsewhere.
What You Receive
A production-ready internationalised web application that serves users across languages and regions with consistent performance and correct locale handling:
- Next.js application with locale-aware routing, hreflang tags, and per-locale URL structures
- Bidirectional layout system with RTL support using CSS logical properties
- ICU message format translation infrastructure with pluralisation and gender support
- CLDR-based formatting for dates, numbers, currencies, and units across all supported locales
- Regional CDN configuration with per-locale caching and edge-side rendering
- Accessibility compliance documentation for WCAG 2.1 AA, EN 301 549, and Section 508 as applicable
When This Matters Most
Your web application was built in English with hardcoded LTR layout assumptions and your product team has been asked to launch in Arabic-speaking markets where RTL is not optional. Your date formatting breaks for Japanese users because it assumes month/day/year ordering. Your URL structure has no locale prefix and adding one will break every inbound link and SEO ranking you have built. Your translation workflow involves developers manually replacing strings in code files and you need a scalable process before adding your fifth language.
Why SaaS Development Agency
We have built web applications serving users in fifteen-plus languages including Arabic, Hebrew, Japanese, and Portuguese — languages where internationalisation goes far beyond string replacement. We understand the difference between a translated application and a truly internationalised one, and we build the latter. Our team has direct experience with RTL layout systems, CLDR formatting edge cases, and the i18n architecture patterns that allow a web application to add new locales without engineering effort per language. Book a free consultation to discuss your internationalisation requirements.




Custom SaaS Development
API Development
Mobile App Development
DevOps & Cloud
Technical Consulting
Figma to Code