Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for multi-lingual interface #305

Open
11 tasks
janbur opened this issue Sep 23, 2024 · 0 comments
Open
11 tasks

Add support for multi-lingual interface #305

janbur opened this issue Sep 23, 2024 · 0 comments

Comments

@janbur
Copy link
Collaborator

janbur commented Sep 23, 2024

Problem

GeoSight is used by users in many different countries. Currently, the User Interface is only available in English language. We need to enable the multi-lingual interface, both in the front-end as well as in the admin interface.

Solution

Add multilingual support to both Django and React components.

  • enable and configure the Django built-in support for internationalization (i18n) and localization (l10n) as well as in React
  • in the code and templates (both for the admin UI as well as dashboard / frontend UI) mark all the strings for translation so they can be translated using Django’s built-in translation tools
  • generate translation files ".po" (Portable Object) files that contain the text to be translated
  • translate strings
  • compile the .po files into .mo (Machine Object) files that Django uses at runtime
  • other configurations as needed (e.g. middleware configuration etc)
  • add a Language Switcher to provide a way for users to change their language preference
  • ensure that URLs are configured to support multi-lingual UI
  • ensure that media and static files can also support multi-lingual UI
  • write unit tests and E2E test
  • document the new functionality (both for developers and users)

Sample implementation of the Language Switcher in the Dashboard interface:

image

Sample implementation of the Language Switcher in the Admin interface:

image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant