Localization for a Web application project 🔎

Hero image for Localization for a Web application project 🔎

Localization Routing

Routing can be a requirement from the client — e.g. when working on a module of an existing system, the team will follow the existing localization practices. When this requirement is not provided, prefer using the following routing: domain.com/{locale}/{page}.

  `domain.com/en/login`
  `domain.com/th/login`
  `domain.com/login` # will fallback on the default locale
  # requires more infrastructure handling
  # and would better fit big systems
  `en.domain.com/login`

  # is less user-friendly
  `domain.com/login?lang=en`

  # Not including the locale in the route can have a bad impact on the UX,
  # especially if a user needs to share a link
  `domain.com/`

If the application needs to be optimized for search engines (SEO), consider redirecting the /{default_locale}/* routes to /*. This prevents content duplication as recommended by Google.