apostrophecms / apostrophecms/apostrophe
Apostrophe should have language packs for as many languages as possible
- Dominant language
- JavaScript
- Stars
- 4.6k
- Forks
- 650
- Avg merge
- 19h 21m
- Merged PRs (30d)
- 23
Description
I am aware of the possibility of using the i18n module in Apostrophe and the possibility of manually translating UI labels to another language, but I think Apostrophe should aim to somehow load default language packs for the core UI.
Is there anything inside Apostrophe currently to facilitate that?
This may be a 3.0 feature, but I don't see it being particularly complex to load a json file either from the main Apostrophe Git repository or through a module specifically done for that, inside the Apostrophe organization.
Currently, enabling locales result in a dev editable lang.json inside locales, but with a central repository of language packs, it may be needed to split this up in two files, one loaded by Apostrophe and not changed by the user, with the current one editable, overwriting any label from the core language pack. This makes it possible to (auto)load a language pack and tweak any labels if needed. A task to update or install language packs could also be useful.
User adoption is of course important, and not having anything but English, makes it so much harder to get a new site going in a local language and keeping it updated with new labels even harder. Additionally when creating site 2-3-4, one would need to copy of language files and that quickly becomes a burden to maintain.
If Apostrophe facilitates a repository for language packs, then I'm sure the community will start adding languages as pull requests.
Having an interface for translation is less important in my opinion, because it's quick and fast to edit a json file if the changes can be seen locally right after.
Sorry if I have missed an old discussion on this, but I thought I would chime in to see if there's any plans towards this or if there's some work that has already been done.
Contributor guide
Research direction
The issue mentions Apostrophe's i18n module and editable locales/lang.json; start by reviewing how locale files are currently loaded and overridden. Done would require an agreed design for central default language packs, user-editable overrides, and a way to add or update packs.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript, node.js
- Domain
- internationalization, localization
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100