Skip to content

[P2] Audit: Header language switcher needs clearer localized affordance #167

Description

@baixiangcpp

Imported from the byteflow.tools deep audit on 2026-06-22.

Problem: the site supports multiple languages, but the header language control is not always obvious, especially on mobile and non-English pages. Users should understand that they can switch locale and remain on the equivalent page when available.

Affected components:

  • Header language switcher
  • Root language selector
  • Mobile navigation
  • Locale route mapping

Reproduction steps:

  1. Open /en, /zh-CN, /zh-TW, /ja, /ko, /de, and /fr.
  2. Use the language switcher from home, category, tool, workflow, and legal pages.
  3. Verify whether the equivalent localized page opens or falls back to home.
  4. Check labels, icons, and keyboard behavior.

Expected behavior: users can easily identify, open, and navigate the language selector. When a localized equivalent exists, it should be selected.

Actual behavior: language switching works broadly, but affordance and page-equivalence behavior need clearer validation.

Impact: non-English users may not discover localization or may lose context when switching pages.

Proposed fix:

  • Use a clear “Language” label or globe + locale name.
  • In mobile nav, expose language switcher as a full list.
  • Preserve route context when switching locales.
  • Add fallback messaging when a localized equivalent is unavailable.
  • Add keyboard and screen-reader labels.

Acceptance criteria:

  • Language switcher is discoverable on desktop and mobile.
  • Route-equivalent switching works for major page types.
  • The current locale is visibly selected.
  • Accessibility labels describe the control clearly.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions