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

website content to be translated #72

Closed
maddhruv opened this issue Apr 14, 2018 · 65 comments
Closed

website content to be translated #72

maddhruv opened this issue Apr 14, 2018 · 65 comments

Comments

@maddhruv
Copy link
Contributor

As also discussed in the previous meeting
How shall we be translating and synchronizing the website contents?

It will be beneficial proposing a robust way of doing that with @nodejs/website-redesign and wrt nodejs/website-redesign#31

A centralized content repo for having contents for the website and i18n access and if @nodejs/website-redesign chooses a CMS for the same.

@lukaszewczak
Copy link
Contributor

Hi @maddhruv , could please describe in more details your idea of the centralized content repo?

@lukaszewczak
Copy link
Contributor

Hi, If I understand correctly, then the method of translating the content for a website depends very much on how the new web page will be built, but in the case of api documentation, nothing changes? Perhaps let's start with a focus on how to translate api and how to solve the issue with translating different api node.js versions.

@maddhruv
Copy link
Contributor Author

maddhruv commented May 2, 2018

Hey, sorry for the late reply, was busy with other stuff.

The idea behind a centralized repo is to maintain all the contents of the new website, plus the docs and other wiki pages, so as it would be easy enough to serve them to the website and also for crowdin integration, we would only have to give access to this central repo. Also it would be much easier to translate the website content and docs.

@fhemberger
Copy link

As the redesign process is still in its early stages, it would be great if you could help us in the mean time setting up Crowdin for the current @nodejs/website. There is a lot of translating already happening right now, and we sure could need a better process to handle updates. ;)

@zeke
Copy link
Contributor

zeke commented Nov 3, 2018

@fhemberger I'd be interested in exploring this. Does the website group meet regularly? If so, I can make an effort to join the next meeting to discuss this.

@fhemberger
Copy link

@zeke No, we don't have any sort of team meetings (we have > 160 contributors 😁). Everything is discussed in GitHub issues.

@fhemberger
Copy link

@nodejs/i18n bump

@Andrulko
Copy link
Contributor

Andrulko commented Feb 5, 2019

@fhemberger If your translators team have any questions, I will be happy to answer / join a meeting. Not sure if you've tried our In-Context for website translation:
https://support.crowdin.com/in-context-localization/

@outsideris
Copy link

Now, we are using the crowdin for translating our website?

@fhemberger
Copy link

@outsideris No, not yet. But translation became a huge part of the website's PRs, so I think we could profit from joining whatever is used for translating the docs. Also to have a better comparison which translations are not up-to-date, etc.

@zeke
Copy link
Contributor

zeke commented Feb 7, 2019

Hey folks. Sorry I haven't been more active on this project lately. Crowdin is all set up with Node.js docs, ready for translation. Folks can jump in at any time and help translate at https://crowdin.com/project/nodejs -- just use your GitHub account to login.

Unfortunately, these translations are not yet being displayed anywhere. They're not used on the nodejs.org website yet. When I was last actively involved in this effort (it's been a few months now), the plan was for the new website (https://github.com/nodejs/website-redesign) to consume the Crowdin-translated content. I don't think there's been much movement on that yet though.

In the long term, using Crowdin will be a more sustainable solution because it keeps all the files in sync. When an English file is updated, it's corresponding translations are also updated. So even though they may sometimes be in a not-fully-translated state, they will always be up to date. This is preferable to the "do everything on GitHub" approach to translation, where the translated files are always out of date and inconsistent with the source content.

I'm pretty busy with my current work at GitHub, but this project is still important to me. I can't make any promises, but I am hoping to be able to breathe new life into it in the coming months.

@fhemberger
Copy link

@zeke Awesome, looking forward to it!

@fhemberger
Copy link

@zeke BTW, are changes on Crowdin synced back to the Node.js docs in the main repo?
If so: Could we add the current website as a second project? Just to try out the workflow on some live content?

Translations are all in https://github.com/nodejs/nodejs.org/tree/master/locale

@zeke
Copy link
Contributor

zeke commented Feb 7, 2019

are changes on Crowdin synced back to the Node.js docs in the main repo?

The source English content comes from https://github.com/nodejs/node/tree/master/doc, and is fetched for all currently supported versions of Node.js

Crowdin opens PRs on this repo (node.js/i18n) that add translated Markdown files in other languages. The goal is for the new website to consume the contents of this repo as a node module. See #92 - Here's a WIP PR to build such a module: #133

@glaucia86
Copy link

@maddhruv @fhemberger I do not know if you're noticing, but the Reactjs.org team tried to do the translations through Crowdin. But without success.
So what they decided to do? They opened the following issue reactjs/react.dev#1605
where they organized by language and called on the community of the whole world to help with translations.
Those responsible for approving and validating translations are the members and contributors of the Organization. What is good to ensure good translation.

Since then, there are several people from all over the world contributing and helping in these translations.

I think if we just make and leave those translations to do at Crowdin, we'll take a long time to finish.

To give you an idea, the translation of en the React, has started two weeks and we are almost finalizing all of it: reactjs/pt-br.react.dev#1

I think if we engage the entire technical community, following the excellent example that the Reactjs.org and Vuejs.org team did, we will have the Nodejs.org website fully translated into several languages.

I am in favor of following their example. What do you think?

cc: @cezaraugusto @zeke @bnb @MylesBorins

screen shot 02-14-19 at 10 25 am

@zeke
Copy link
Contributor

zeke commented Feb 15, 2019

I think if we just make and leave those translations to do at Crowdin, we'll take a long time to finish.

I disagree. The Electron project has over 1000 volunteer translators, and we're seeing great progress in numerous languages: https://electronjs.org/languages

From reactjs/react.dev#1605

each translation is managed in a separate fork of the main repo by a dedicated team

This is existing unscalable approach used by the @nodejs org. One of the benefits of using Crowdin is that all content in all languages is guaranteed to be up to date, even if not fully translated. When using GitHub alone with forks and branches, content gets out of date very quickly.

We've already gone to great lengths to set up this nodejs/i18n translation pipeline. The remaining work is to make the translations in this repo easily consumable by other projects, namely the Node.js website.

@glaucia86
Copy link

glaucia86 commented Feb 15, 2019

I disagree. The Electron project has over 1000 volunteer translators, and we're seeing great progress in numerous languages: https://electronjs.org/languages

From reactjs/reactjs.org#1605

each translation is managed in a separate fork of the main repo by a dedicated team

This is existing unscalable approach used by the @nodejs org. One of the benefits of using Crowdin is that all content in all languages is guaranteed to be up to date, even if not fully translated. When using GitHub alone with forks and branches, content gets out of date very quickly.

We've already gone to great lengths to set up this nodejs/i18n translation pipeline. The remaining work is to make the translations in this repo easily consumable by other projects, namely the Node.js website.

Ok. I just gave it another option. But whatever all of you decide, I will gladly accept. Thanks.

cc: @zeke

@alexandrtovmach
Copy link
Contributor

@zeke Hello, really appreciate your help with Crowdin project configuration. Can I help or assist you with it to finally make possible to translate website content too?

@alexandrtovmach
Copy link
Contributor

I had a chat with CrowdIn team, and we discussed the solution for nodejs website. Here is conclusion:

  1. Need to create and configure one more project on CrowdIn by nodejs-crowdin user, for example ― nodejs-website which will be based on https://github.com/nodejs/nodejs.org
  2. Probably rename current Nodejs project to nodejs-docs

@alexandrtovmach
Copy link
Contributor

Summarizing:

Currently, all translations of the website content @nodejs/website goes through PR and all API docs @nodejs/documentation CrowdIn. From my point of view the best option is to move translation process of the website to CrowdIn too, to have one centralized place with all translation data. Later, when @nodejs/website-redesign team complete new version, we can easily migrate to new repository, without breaking translation process.

To do
I'm ready to investigate, but I need to get permissions/credentials on CrowdIn to configure system for website translation. @zeke could you help me with that?

@zeke
Copy link
Contributor

zeke commented Jul 2, 2019

@alexandrtovmach yeah I can help with that. I don't currently have much free time to work on this, but I can help unblock. Someone needs to:

That will get the latest docs into the repo, and they should automatically integrated into the existing Crowdin pipeline for translation.

After that, the question is how to get the new website to consume the translated data from the nodejs/i18n repo.

@alexandrtovmach
Copy link
Contributor

@zeke So I've collected the newest content and here's PR. But what about integrating nodejs.org content with CrowdIn as I described.

@zeke
Copy link
Contributor

zeke commented Jul 12, 2019

Once the changes from your PR #199 land on master, they'll automatically be ingested into Crowdin, and Crowdin will soon after create a followup PR that updates the translated files to be in sync with the source English.

@alexandrtovmach
Copy link
Contributor

alexandrtovmach commented Jul 12, 2019

@zeke, I see but that's only docs, but I asked about content for a website. Possible way

@zeke
Copy link
Contributor

zeke commented Sep 4, 2019

Here we go! https://crowdin.com/project/nodejs-website

Screen Shot 2019-09-03 at 9 35 36 PM

@alexandrtovmach I've added you as a manger for this new project.

@zeke
Copy link
Contributor

zeke commented Sep 4, 2019

Thanks @obensource for the creds 👍

@alexandrtovmach
Copy link
Contributor

@zeke @obensource Thank you.

About "sharing policy" ― I don't actually understand what is that. Could someone explain or give me some resources?

@alexandrtovmach
Copy link
Contributor

@zeke I need to connect nodejs.org repo to CrowdIn here:
Selection_311

But I haven't enough rights in nodejs organiztion to be able set this integration

@zeke
Copy link
Contributor

zeke commented Sep 18, 2019

Hey @obensource I forget: what GitHub user is associated with the the nodejs-crowdin Crowdin user?

@alexandrtovmach
Copy link
Contributor

@zeke Seems like it's called nodejs
image

@alexandrtovmach
Copy link
Contributor

So we have CrowdIn/Node.js project that's connected with github/nodejs
And we need to connect the same github/nodejs with CrowdIn/nodejs-website

@alexandrtovmach
Copy link
Contributor

@zeke If you have access to it, just go https://crowdin.com/project/nodejs-website/settings#integration and connect accounts. All other things I'll handle by my own

@alexandrtovmach
Copy link
Contributor

alexandrtovmach commented Sep 26, 2019

@zeke @obensource any chance to help me with that?

@TiagoDanin
Copy link
Contributor

Hey @obensource I forget: what GitHub user is associated with the the nodejs-crowdin Crowdin user?

Github user is @nodejs-crowdin (nodejs/build#1220 (comment))

@nschonni
Copy link
Member

Any progress here, it would help with nodejs/nodejs.org#2696

@alexandrtovmach
Copy link
Contributor

@nschonni Unfortunately, I'm still blocked with access to github account

Wait for @zeke @obensource

@nschonni
Copy link
Member

nschonni commented Dec 5, 2019

@zeke @obensource any progress? There have been more people trying to add additional languages and having a better way for them to start contributing would be great

@zeke
Copy link
Contributor

zeke commented Mar 13, 2020

I've added a new GitHub Personal Access Token to the https://crowdin.com/project/nodejs GitHub integration. Going to close this issue. Feel free to open more targeted issues if there's something here that still needs to be discussed.

@zeke zeke closed this as completed Mar 13, 2020
@nschonni
Copy link
Member

@zeke that isn't the correct project

@zeke
Copy link
Contributor

zeke commented Mar 13, 2020

@nschonni oh shoot thanks for pointing that out.

This morning I checked https://crowdin.com/project/nodejs-website/settings#integration and saw an existing GitHub integration there that had synced recently, so I assumed that was still working. But now I see that is integrating with the alexandrtovmach / i18n repo, not the canonicalnodejs/1i8n repo.

I have now removed the existing alexandrtovmach / i18n integration, created a new PAT for GitHub user @nodejs-crowdin, and recreated the integration in https://crowdin.com/project/nodejs-website:

Screen Shot 2020-03-13 at 2 28 25 PM

cc @alexandrtovmach

@nschonni
Copy link
Member

@zeke thanks 👍
I think the nodejs/i18n isn't the right project either, should be https://github.com/nodejs/nodejs.org, but if the token in now in the nodejs-website Crowdin project, that's the important part

@alexandrtovmach
Copy link
Contributor

@zeke Thank you
@nschonni About confusing with project names, that's my fault because firstly I had project for nodejs website translation (https://crowdin.com/project/nodejs-website), but than when the whole process was staled I changed it, to translate API docs. Going to fix everything soon

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

No branches or pull requests