Skip to content

Have you considered adding i18n functionality? #2037

@lianxin255

Description

@lianxin255

Is your feature request related to a problem? Please describe.
Yes. The project currently lacks internationalization (i18n) support, meaning all UI text is hardcoded in a single language. This creates a significant barrier for non-native speakers, limiting adoption and accessibility for global users who may struggle to navigate and use the interface effectively. As a result, many potential users and contributors are excluded simply due to language barriers.

Describe the solution you'd like
I would like to see a comprehensive i18n system implemented that includes:

  1. i18n Framework Integration: Adopt a standard i18n library (e.g., react-i18next, vue-i18n, or similar based on the project's tech stack) to manage translations
  2. Extract all UI strings: Move all user-facing text to locale files (JSON/YAML format) for easy translation
  3. Language Switcher: Add a UI component allowing users to dynamically switch languages with persistence across sessions
  4. Community Translation Support: Set up a clear structure for contributors to add new languages via pull requests
  5. Documentation: Provide guidelines for translators and maintainers on how to contribute translations
  6. Initial Language Support: Start with at least one additional major language (e.g., Chinese, Spanish) as a proof of concept

Describe alternatives you've considered

  • Browser auto-translate: This provides poor UX, often breaks UI layouts, and doesn't work for dynamic content or technical terminology
  • Maintaining language-specific forks: This is unsustainable, fragments the community, and creates maintenance overhead
  • Manual text replacement: Not scalable and gets overwritten with each update

Additional context

  • This would significantly expand the project's global reach and user base
  • Many similar projects (e.g., [example-project]) have successfully implemented i18n with community support
  • I'm particularly interested in contributing Chinese (zh-CN) translations once the framework is in place
  • Consider using platforms like Crowdin or Weblate to streamline community translation efforts

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions