Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

feat: Add Persian (Farsi) locale support #157

Open
Labels

Description

Persian (Farsi) is spoken by millions of users worldwide. Adding Persian locale support will make the application accessible to Persian-speaking developers and enhance the platform's global reach.

Overview

Persian (Farsi) will be added as a new supported locale with the language code fa. Like Arabic, Persian is written right-to-left (RTL), so proper RTL support must be ensured throughout the application.

Tasks

  • Create a new locale file locales/fa.json with all translation keys from locales/en.json translated to Persian.
  • Update lib/i18n-core.ts to add fa to the supportedLocales array.
  • Add Persian entry to the localeMeta object in lib/i18n-core.ts with the following configuration:
    fa: { dir: "rtl", label: "فارسی" }
  • Test the language switcher to ensure Persian appears in the dropdown menu.
  • Verify RTL layout is applied correctly across all components (using the existing dir property mechanism).
  • Test the application with Persian locale selected to ensure all UI elements display correctly.

Translation Keys

All translation keys from the existing English locale must be translated. The keys include:

  • Application titles and subtitles
  • Error messages
  • UI labels and buttons
  • Explanations and descriptions
  • Comparison metrics
  • Community contribution labels
  • And more (reference locales/en.json for the complete list)

RTL Considerations

  • Ensure the application respects the dir: "rtl" setting for proper layout direction.
  • Test that text alignment, spacing, and component positioning work correctly in RTL mode.
  • Verify that language-sensitive components (like tables, charts, and forms) display correctly in RTL.

Testing

  • Language switcher displays "فارسی" correctly.
  • All pages render without errors when Persian is selected.
  • RTL layout is applied properly across all components.
  • No layout shifts or broken styling in RTL mode.

Tip

🚀 Want to contribute?
Comment assign me to be automatically assigned to this issue via our GitHub Actions bot. Happy coding! ✨

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

        AltStyle によって変換されたページ (->オリジナル) /