mirror of
https://github.com/BookStackApp/BookStack.git
synced 2026-02-05 08:39:55 +03:00
Localization platform #1029
Closed
opened 2026-02-04 23:27:07 +03:00 by OVERLORD
·
27 comments
No Branch/Tag Specified
development
l10n_development
further_theme_development
release
llm_only
vectors
v25-11
docker_env
drawio_rendering
user_permissions
ldap_host_failover
svg_image
prosemirror
captcha_example
fix/video-export
v25.12.3
v25.12.2
v25.12.1
v25.12
v25.11.6
v25.11.5
v25.11.4
v24.11.4
v25.11.3
v25.11.2
v25.11.1
v25.11
v25.07.3
v25.07.2
v25.07.1
v25.07
v25.05.2
v25.05.1
v25.05
v25.02.5
v25.02.4
v25.02.3
v25.02.2
v25.02.1
v25.02
v24.12.1
v24.12
v24.10.3
v24.10.2
v24.10.1
v24.10
v24.05.4
v24.05.3
v24.05.2
v24.05.1
v24.05
v24.02.3
v24.02.2
v24.02.1
v24.02
v23.12.3
v23.12.2
v23.12.1
v23.12
v23.10.4
v23.10.3
v23.10.2
v23.10.1
v23.10
v23.08.3
v23.08.2
v23.08.1
v23.08
v23.06.2
v23.06.1
v23.06
v23.05.2
v23.05.1
v23.05
v23.02.3
v23.02.2
v23.02.1
v23.02
v23.01.1
v23.01
v22.11.1
v22.11
v22.10.2
v22.10.1
v22.10
v22.09.1
v22.09
v22.07.3
v22.07.2
v22.07.1
v22.07
v22.06.2
v22.06.1
v22.06
v22.04.2
v22.04.1
v22.04
v22.03.1
v22.03
v22.02.3
v22.02.2
v22.02.1
v22.02
v21.12.5
v21.12.4
v21.12.3
v21.12.2
v21.12.1
v21.12
v21.11.3
v21.11.2
v21.11.1
v21.11
v21.10.3
v21.10.2
v21.10.1
v21.10
v21.08.6
v21.08.5
v21.08.4
v21.08.3
v21.08.2
v21.08.1
v21.08
v21.05.4
v21.05.3
v21.05.2
v21.05.1
v21.05
v21.04.6
v21.04.5
v21.04.4
v21.04.3
v21.04.2
v21.04.1
v21.04
v0.31.8
v0.31.7
v0.31.6
v0.31.5
v0.31.4
v0.31.3
v0.31.2
v0.31.1
v0.31.0
v0.30.7
v0.30.6
v0.30.5
v0.30.4
v0.30.3
v0.30.2
v0.30.1
v0.30.0
v0.29.3
v0.29.2
v0.29.1
v0.29.0
v0.28.3
v0.28.2
v0.28.1
v0.28.0
v0.27.5
v0.27.4
v0.27.3
v0.27.2
v0.27.1
v0.27
v0.26.4
v0.26.3
v0.26.2
v0.26.1
v0.26.0
v0.25.5
v0.25.4
v0.25.3
v0.25.2
v0.25.1
v0.25.0
v0.24.3
v0.24.2
v0.24.1
v0.24.0
v0.23.2
v0.23.1
v0.23.0
v0.22.0
v0.21.0
v0.20.3
v0.20.2
v0.20.1
v0.20.0
v0.19.0
v0.18.5
v0.18.4
v0.18.3
v0.18.2
v0.18.1
v0.18.0
v0.17.4
v0.17.3
v0.17.2
v0.17.1
v0.17.0
v0.16.3
v0.16.2
v0.16.1
v0.16.0
v0.15.3
v0.15.2
v0.15.1
v0.15.0
v0.14.3
v0.14.2
v0.14.1
v0.14.0
v0.13.1
v0.13.0
v0.12.2
v0.12.1
v0.12.0
v0.11.2
v0.11.1
v0.11.0
v0.10.0
v0.9.3
v0.9.2
v0.9.1
v0.9.0
v0.8.2
v0.8.1
v0.8.0
v0.7.6
v0.7.5
v0.7.4
v0.7.3
0.7.2
v.0.7.1
v0.7.0
v0.6.3
v0.6.2
v0.6.1
v0.6.0
v0.5.0
Labels
Clear labels
🎨 Design
📖 Docs Update
🐛 Bug
🐛 Bug
:cat2:🐈 Possible duplicate
💿 Database
☕ Open to discussion
💻 Front-End
🐕 Support
🚪 Authentication
🌍 Translations
🔌 API Task
🏭 Back-End
⛲ Upstream
🔨 Feature Request
🛠️ Enhancement
🛠️ Enhancement
🛠️ Enhancement
❤️ Happy feedback
🔒 Security
🔍 Pending Validation
💆 UX
📝 WYSIWYG Editor
🌔 Out of scope
🔩 API Request
:octocat: Admin/Meta
🖌️ View Customization
❓ Question
🚀 Priority
🛡️ Blocked
🚚 Export System
♿ A11y
🔧 Maintenance
> Markdown Editor
pull-request
Mirrored from GitHub Pull Request
Milestone
No items
No Milestone
Projects
Clear projects
No project
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: starred/BookStack#1029
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @Mant1kor on GitHub (Feb 6, 2019).
It would be nice to use a more convenient tool for translating BookStack. Centralized management and tracking of new words/phrases and all the other benefits of a localization platform.
I recommend to try Crowdin or Transifex (they're free for Open Source project, see Q&A).
@ssddanbrown commented on GitHub (Feb 6, 2019):
Good suggestion.
I had a look at such platforms a while back but didn't get too far. Would be good to get some input from someone that has used such systems for a similar project to BookStack or some general examples of use in other open-source projects.
@Mant1kor commented on GitHub (Feb 6, 2019):
I have experience only as an translator.
https://www.transifex.com/customers/
https://crowdin.com/page/customer-testimonials
You have to look at automatization between git and localization platform, to push or pull translation files.
@cima commented on GitHub (Mar 23, 2019):
Transifex is used for localization of TinyMCE WYSIWYG editor which is now outside of BookStack's translation files.
@ssddanbrown commented on GitHub (Oct 18, 2019):
I've just set up BookStack on Crowdin, Just need to do some final setup but seems to be fairly easy to integrate. Loads of nice features and a much friendlier UI for those not used to git.
A couple of potential concerns though:
Attribution
How do we ensure people get proper attribution?
Crowdin Open Source Terms
One of the agreements of using the free open-source tier of crowdin is that you agree for the project translations to be submitted to "Crowdin Global Translation Memory". Those translations are the work of others so I feel a little uncomfortable submitting their translations. Might be good to get some general feedback from existing BookStack translators on this one.
@Mant1kor commented on GitHub (Oct 18, 2019):
I do not mind.
Crowdin is very comfortable platform to translators.
@ssddanbrown commented on GitHub (Oct 18, 2019):
Thanks for confirming @Mant1kor.
Question to existing translators
Do you have any objections regarding the translations, that you helped put together, going into the "Crowdin Global Translation Memory". We are looking at using Crowdin to make translating more accessible (Friendly UI where missing translations are highlighted and shown against the base English text). Part of the requirements for us using them for free as an "Open Source Project" is that existing translations will go into their "Global Translation Memory" which essential is their own DB to provide recommendations to their other customers and open source projects. Obviously we will benefit on the inverse of that, where we can get translation suggestions when needed.
If you don't want to provide feedback in the open you should be able to find my email on my GitHub profile.
Pinging existing translators regarding the above: @qligier, @leomartinez, @oykenfurkan, @moucho, @kostefun, @danielroehrig-mm, @miles75, @DeehSlash, @NootoNooto, @Mant1kor, @agvol, @cima, @maantje, @Xiphoseer, @vasiliev123, @ezzra, @qianmengnet, @TheLastOperator, @kejjang, @CliffyPrime, @limkukhyun, @vriic, @mullinsmikey, @houbaron, @kmoj86, @marcusforsberg, @nicobubulle, @alex2702, @msaus, @Alwaysin, @cipi1965, @artur-trzesiok, @lbguilherme, @sanderdw, @timoschwarzer, @Joorem, @JachuPL, @S64, @diegoseso, @arietimmerman, @ReeseSebastian, @NakaharaL, @SergioMendolia, @robertlandes
I have 13 days left on a trial, If I don't hear any major concerns by next weekend I'll request a free open source account.
@cipi1965 commented on GitHub (Oct 18, 2019):
It looks good to me!
@cipi1965 commented on GitHub (Oct 18, 2019):
@ssddanbrown to update translations can i work on the platform or not for now?
@qligier commented on GitHub (Oct 18, 2019):
I think this is a really good move as it will be easier to work on translations and keep all languages synchronized. +1 for me.
@timoschwarzer commented on GitHub (Oct 18, 2019):
I think the
missing translations are highlighted and shown against the base English textpart is a really good thing alongside suggested translations. Looks good to me 👍@marcusforsberg commented on GitHub (Oct 18, 2019):
Sounds great! 😊
@MrKhalidJ commented on GitHub (Oct 18, 2019):
No objections here 👍
@moucho commented on GitHub (Oct 18, 2019):
Looks good!
@ssddanbrown commented on GitHub (Oct 18, 2019):
Positive feedback so far!
Thanks @Mant1kor and @cipi1965 for giving it a test drive 😄
I've done an initial merge of those updates in addition to all the other changes the crowdin integration has done. A bit of change in how the base files are used now:
Unfortunately it does look like everything will be commited by me as the integration user so no attribution via git. I think I'll put together a script to read from the crowdin API to generate an attribution list file of some kind. Could then link that in with GitHub actions so it's generated automatically whenever new translations are provided.
Remaining Actions
en/settings.phplanguage dropdown so it does not mentoin to delete these.@artur-trzesiok commented on GitHub (Oct 18, 2019):
Looks good
pt., 18 paź 2019, 18:20 użytkownik Dan Brown notifications@github.com
napisał:
@Mant1kor commented on GitHub (Oct 18, 2019):
@ssddanbrown just found this apps https://github.com/marketplace/crowdin
Seems like it's what you need.
@JachuPL commented on GitHub (Oct 18, 2019):
Great idea, this would be very helpful
@ssddanbrown commented on GitHub (Oct 18, 2019):
@Mant1kor Yup, I've already set up the integration, just directly via crowdin. Pretty sure that marketplace item just acts as a shortcut to what I've done already, just with less control of the account (I don't want to request an open source account yet or be locked into a business account). The integration is active and a pull request will appear with new translations (If there are any) every-so-often.
@NootoNooto commented on GitHub (Oct 18, 2019):
No objections, sounds good.
@nicobubulle commented on GitHub (Oct 18, 2019):
Good for me !
Le ven. 18 oct. 2019 à 18:53, Nooto notifications@github.com a écrit :
@kejjang commented on GitHub (Oct 19, 2019):
sounds great!
@sanderdw commented on GitHub (Oct 19, 2019):
Looks good! Fine by me!
@TheLastOperator commented on GitHub (Oct 19, 2019):
Free software is free, you have my free permission ^^
@oykenfurkan commented on GitHub (Oct 19, 2019):
No objections, good luck👍
@cima commented on GitHub (Oct 19, 2019):
I am fine with my translations being imported. A project page or readme with attribution to translators at the date of import shoud be enough. It is better to boost the project development than insisting on translation history.
@ssddanbrown commented on GitHub (Oct 28, 2019):
Since there was no negative pushback or objections on this I've now requested an open source account on crowdin.
An attribution system will be be in place before the next BookStack feature release.
@ssddanbrown commented on GitHub (Dec 7, 2019):
Readme now updated with link to attribution file and translation details now point to Crowdin.
Now closing this off.