Feature i18n added #1526

Closed
opened 2026-04-05 19:33:15 +02:00 by MrUnknownDE · 0 comments
Owner

Originally created by @Lokowitz on 5/4/2025

Community Contribution License Agreement

By creating this pull request, I grant the project maintainers an unlimited,
perpetual license to use, modify, and redistribute these contributions under any terms they
choose, including both the AGPLv3 and the Fossorial Commercial license terms. I
represent that I have the right to grant this license for all contributed content.

Language request

Please request missing languages here https://github.com/orgs/fosrl/discussions/845
Implemented languages:

  • Chinese
  • Dutch
  • English
  • Frensh
  • German
  • Italian
  • Polish
  • Portuguese
  • Spanish
  • Turkish

Description

After a lot of time reading the documentations i was able to implement a bit of i18n.
I choosed next-intl app router without i18n routing.
The language selector is not perfectly integrated, i just copied the stuff from the example.
For translation i used Crowdin and performed a machine translation for same languages, just for testing.
The selected language is stored in a cookie using /src/services/locale.ts maybe it would be better to store this in the user database, but i am not able to implement this.

Currently i am not done with all pages, but please have a look at it and tell me if this is the way you want to implement this.

Greetings Marvin

Progress

  • language selector (need help)
  • store and read selected langugae from db instead of cookie (need help)
  • create Crowdin account and set it up (or similar translation platform)
  • all translations done
    • components
    • org
      • access
      • api
      • general
      • resource
      • share
      • sites
    • admin
      • api
      • idp
      • license
      • user
    • auth
      • idp
      • login
      • password
      • resource
      • signup
      • verify
    • app components
    • invite
    • setup (metadata in layout missing)
*Originally created by @Lokowitz on 5/4/2025* ## Community Contribution License Agreement By creating this pull request, I grant the project maintainers an unlimited, perpetual license to use, modify, and redistribute these contributions under any terms they choose, including both the AGPLv3 and the Fossorial Commercial license terms. I represent that I have the right to grant this license for all contributed content. ## Language request Please request missing languages here https://github.com/orgs/fosrl/discussions/845 Implemented languages: - Chinese - Dutch - English - Frensh - German - Italian - Polish - Portuguese - Spanish - Turkish ## Description After a lot of time reading the documentations i was able to implement a bit of i18n. I choosed next-intl app router [without i18n routing](https://next-intl.dev/docs/getting-started/app-router/without-i18n-routing). The language selector is not perfectly integrated, i just copied the stuff from the [example](https://github.com/amannn/next-intl/tree/main/examples/example-app-router-without-i18n-routing). For translation i used Crowdin and performed a machine translation for same languages, just for testing. The selected language is stored in a cookie using /src/services/locale.ts maybe it would be better to store this in the user database, but i am not able to implement this. Currently i am not done with all pages, but please have a look at it and tell me if this is the way you want to implement this. Greetings Marvin ## Progress - [x] language selector (need help) - [ ] store and read selected langugae from db instead of cookie (need help) - [ ] create Crowdin account and set it up (or similar translation platform) - [x] all translations done - [x] components - [x] org - [x] access - [x] api - [x] general - [x] resource - [x] share - [x] sites - [x] admin - [x] api - [x] idp - [x] license - [x] user - [x] auth - [x] idp - [x] login - [x] password - [x] resource - [x] signup - [x] verify - [x] app components - [x] invite - [x] setup (metadata in layout missing)
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: github/pangolin#1526