Skip to content
This repository has been archived by the owner on Feb 16, 2023. It is now read-only.

Internationalization / localization of frontend #123

Closed
C0nsultant opened this issue Dec 11, 2020 · 10 comments
Closed

Internationalization / localization of frontend #123

C0nsultant opened this issue Dec 11, 2020 · 10 comments
Labels
feature request New feature or request
Milestone

Comments

@C0nsultant
Copy link
Contributor

Thank you for picking up work on paperless again, Jonas!
I've been experimenting with both the old paperless and mayan for a while. With both, it just didn't click for me.
NG on the other hand is more approachable and intuitive to use, kudos!
While not sure if the barebones simplicity of NG will do it for me in the long run, I know a lot of people that could and would benefit from it... If it weren't for the fact that it currently only offers an english interface. Most of my friends and family that I have in mind simply are not proficient enough in a foreign language. As a result, the barrier to entry would likely be high enough for most and they would simply not use it because of that.

Given that the current frontend is reasonably sized and only contains a handful of static text, will you consider maintaining an internationalized version of NG? You don't even have to do the translation yourself, django's i18n allows for a lot of flexibility and community contributions.

At a basic level, the whole installation would be switched to a static language (i.e. through paperless.conf or the admin page).
More advanced versions could include automatic switching based on Accept-Language headers and/or per-user configuration.

@jonaswinkler
Copy link
Owner

jonaswinkler commented Dec 11, 2020

Hello!

I've got internationalization in mind. I'm aware that we can create simple language files and have translation done by users who speak that language. However, we're still doing lots of work on the front end and change things around quite a bit (adding menu options for bulk updates, changing the filter interface) and all these updates add or remove strings I'd need to translate / have translated.

Once we have a stable release, I expect the interface to remain the same, mostly. Then we can start thinking about translation.

I'd absolutely favor to use Accept-Language, that's for sure.

@jonaswinkler
Copy link
Owner

Also see #116

@jonaswinkler jonaswinkler added this to the 1.1 milestone Dec 11, 2020
@jonaswinkler jonaswinkler added feature request New feature or request Front end labels Dec 11, 2020
@jonaswinkler
Copy link
Owner

Alright, I've just looked into that and figured out how to serve different versions of the front end based on the requested language, and it's certainly nice to have paperless available in your native language.

Angular creates some XLIFF format files, and translation seems to be fairly simple with these: https://angular.io/guide/i18n#translate-each-translation-file

Once I've got #170 sorted out I'll add localization support.

jonaswinkler pushed a commit that referenced this issue Dec 28, 2020
jonaswinkler pushed a commit that referenced this issue Dec 28, 2020
jonaswinkler pushed a commit that referenced this issue Dec 28, 2020
@jonaswinkler
Copy link
Owner

Does anyone know about some nice tools that could help us with translating paperless? I guess we could just edit the XLF files directly, but some online tool that tracks completeness of translations and handles updates to the message files (new and obsolete translation units) would be nice.

File to translate looks like this right now. messages.xlf.txt

@jonaswinkler jonaswinkler added the help needed This is stuff that I cannot do myself. label Dec 29, 2020
@zjean
Copy link
Contributor

zjean commented Dec 29, 2020

Maybe the open source version of crowdin?

@jonaswinkler jonaswinkler changed the title Internationalization / localzation of frontend Internationalization / localization of frontend Dec 29, 2020
@jonaswinkler jonaswinkler pinned this issue Dec 29, 2020
@jonaswinkler
Copy link
Owner

jonaswinkler commented Dec 29, 2020

This is in fact pretty damn nice. Didn't know they had a free option. Lets see how they like the project...

@C0nsultant
Copy link
Contributor Author

Transifex offers free serivce to open source projects under a few loose conditions that NG should satisfy.

Transifex offers an Open Source Program to Open Source projects that have no funding, revenue, and/or commercialization model. The intent is to support small and independent Open Source projects.
[...]
Open Source projects are ones with publicly available source codes licensed under an OSI-approved license, such as GPL or BSD.

@jonaswinkler
Copy link
Owner

jonaswinkler commented Dec 29, 2020

Set up a project at transifex, which can be accessed here: https://www.transifex.com/--261/paperless-ng/

Just keep in mind that there are still some undiscovered translation strings and some strings that contain some placeholders that should not be there, etc.

@jonaswinkler jonaswinkler changed the title Internationalization / localization of frontend Paperless-NG translation Dec 29, 2020
@jonaswinkler jonaswinkler changed the title Paperless-NG translation Internationalization / localization of frontend Dec 29, 2020
@jonaswinkler jonaswinkler unpinned this issue Dec 29, 2020
@jonaswinkler
Copy link
Owner

See #212.

@jonaswinkler jonaswinkler removed the help needed This is stuff that I cannot do myself. label Dec 29, 2020
jonaswinkler pushed a commit that referenced this issue Dec 29, 2020
jonaswinkler pushed a commit that referenced this issue Dec 29, 2020
@jonaswinkler
Copy link
Owner

Also see #215.

This is now done in two separate tickets, so I'll close this.

@jonaswinkler jonaswinkler modified the milestones: 1.1, 1.0 Jan 23, 2021
tribut pushed a commit to tribut/paperless-ng that referenced this issue Aug 18, 2022
…_and_yarn/src-ui/dev/ts-node-10.5.0

Bump ts-node from 8.3.0 to 10.5.0 in /src-ui
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
feature request New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants