Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: update the i18n guidelines #216

Closed
wants to merge 33 commits into from
Closed
Show file tree
Hide file tree
Changes from 32 commits
Commits
Show all changes
33 commits
Select commit Hold shift + click to select a range
605c1c0
fix: change intro wording to be more friendly
adiati98 Jun 7, 2024
4866cc1
fix: change Translations section into Community Translations section …
adiati98 Jun 7, 2024
3caa3f4
fix: remove How can I Contribute section
adiati98 Jun 7, 2024
63ea199
feat: add Why Translating Our Courses section
adiati98 Jun 7, 2024
db31ef8
feat: add Getting Started and Forking the Repository sections
adiati98 Jun 7, 2024
091a3cc
feat: add creating a branch section
adiati98 Jun 7, 2024
d2a6376
feat: add organizing project section
adiati98 Jun 7, 2024
2556113
feat: add creating contrib guidelines section
adiati98 Jun 7, 2024
329c963
feat: add setting up platform section
adiati98 Jun 7, 2024
152d7f2
fix: remove sections unrelated to community translations
adiati98 Jun 7, 2024
a4b08b2
feat: add community section
adiati98 Jun 7, 2024
66b4d67
feat: add Working with Translations section
adiati98 Jun 10, 2024
183a0e0
feat: add content to add translation in community translations file
adiati98 Jun 10, 2024
0a57737
fix: title in community-translations.md
adiati98 Jun 10, 2024
ffce822
fix: remove subtitles in community translations file
adiati98 Jun 10, 2024
fb7063e
fix: update instructions in community translations file
adiati98 Jun 10, 2024
960786f
fix: update wording in i18n-guidelines.md
adiati98 Jun 10, 2024
8b17cd8
fix: remove best practices for translations section
adiati98 Jun 10, 2024
d965c1f
feat: add an instruction about ensuring links go to correct paths
adiati98 Jun 10, 2024
fa3af94
fix: update note
adiati98 Jun 10, 2024
3837737
Merge branch 'main' of https://github.com/open-sauced/intro into feat…
adiati98 Jun 10, 2024
d52edca
fix: links to contributing folder
adiati98 Jun 10, 2024
2a3254a
fix: highlight notes with GitHub's highlight
adiati98 Jun 10, 2024
13edc12
fix: wording for better flow
adiati98 Jun 10, 2024
208eed2
fix: clarify link example
adiati98 Jun 10, 2024
10ccf81
fix: highlight a note following GitHub's highlight
adiati98 Jun 10, 2024
8b039a4
fix: change link example for consistency
adiati98 Jun 10, 2024
599fb9d
fix: change capitalized words to lowercase
adiati98 Jun 10, 2024
20ca75c
fix: change link to community translations
adiati98 Jun 10, 2024
c212988
fix: change instructions about navbar
adiati98 Jun 10, 2024
84d1221
fix: notes and wording
adiati98 Jun 10, 2024
d09ed99
fix: remove the instruction to remove translations folder
adiati98 Jun 10, 2024
f837609
fix: add colons
adiati98 Jun 10, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,9 +15,9 @@ Head over to The Open Source Education Path with OpenSauced on [GitHub](./docs/R

We encourage you to contribute to OpenSauced! All contributors are required to abide by our [Code of Conduct](https://github.com/open-sauced/.github/blob/main/CODE_OF_CONDUCT.md).

- For information on how to contribute to the intro repository, check out the [Contributing Guidelines](./docs/CONTRIBUTING.md).
- For information on how to contribute to the intro repository, check out the [Contributing Guidelines](./contributing/CONTRIBUTING.md).

- To translate our Intro to Open Source or Becoming a Maintainer course, check out our [🌐 i18n Guidelines](./docs/i18n-guidelines.md).
- To translate our Intro to Open Source or Becoming a Maintainer course, check out our [🌐 i18n Guidelines](./contributing/i18n-guidelines.md).

## **🍕 Community**

Expand Down
140 changes: 69 additions & 71 deletions contributing/i18n-guidelines.md
Original file line number Diff line number Diff line change
@@ -1,118 +1,116 @@
# 🌐 i18n Guidelines

Welcome to our i18n Guidelines! We appreciate your interest in translating our courses.
Welcome to our i18n Guidelines! Thank you for being so interested in translating our courses.

## Translations
## Community Translations

At the moment, we have the courses in the following languages:
At the moment, we are unable to offer translation maintenance.

### Intro to Open Source Course
However, we know some contributors are willing to translate and help our courses to reach a broader audience. We value these contributions! ✨

- [English](./intro-to-oss/README.md)
- [French](./intro-to-oss/translations/fr/README.md)
- Brazilian Portuguese — work in progress
Please keep reading if you want to translate the Open Source Education Path with OpenSauced.

### Becoming a Maintainer Course
## Why Translating Our Courses

- [English](./becoming-a-maintainer/README.md)
Here are some benefits of translating our courses:

## How can I Contribute?
- You will have the opportunity to learn to maintain a project and **become the maintainer** of the translation as it will live in your forked repository.
- You can learn and experience collaborating with contributors, nurturing the translation community, and even assembling your own maintainers' team!
- You will be able to learn how to deploy and host a static website on your own.
- You can make the translation available as soon as possible for a broader audience.
- You can update the translation faster by reviewing and merging in pull requests yourself as a maintainer.

There are two types of i18n contributions that we accept:
> [!TIP]
> It will be helpful taking our [Becoming a Maintainer](../docs/becoming-a-maintainer/README.md) course to equip you in maintaining your forked repository.

1. Translate our Intro to Open Source or Becoming a Maintainer course.
2. Review pull requests (PRs) and translations.
## Getting Started

### Translate the Courses
### 1. Forking the Repository

We have two types of translations:
First, you must fork the [intro repository](https://github.com/open-sauced/intro). See the official GitHub docs for [forking a repository](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/working-with-forks/fork-a-repo#forking-a-repository).

#### 1. Official Translations
### 2. Creating a Branch for the Translation

Official translations start as a post on our [GitHub Discussions](https://github.com/open-sauced/intro/discussions) board. If there is enough interest and volunteers, we can add the official translation as an option to view within our README.
[Create a branch](https://www.shellhacks.com/git-create-new-branch-and-checkout/) where the translation changes will be merged. This will be the default branch of your translation and the one from which you deploy the translation.

#### 2. Community Translations
You can name this branch anything. For example: `jp-translations`.

We can't always support the maintenance of translations. However, we know some contributors are willing to translate, and we value these contributions. For that reason, we have a [Community Translations](community-translations.md) section.
> [!NOTE]
> The `main` branch should be free from translations.

If you're interested in translating our Intro to Open Source course, fork this repository and add the translation to your forked repository. Then, you can add a link to your translation in the `community-translations.md` file that you can find in the root directory.
### 3. Organizing the Project for Translation

We encourage you to add it to the [discussions board](https://github.com/open-sauced/intro/discussions) as well. We will consider moving it to an official translation if it becomes popular and has enough support.
The content in the forked repository is entirely translations. So, organize your forked repository as follows:

### Review Pull Requests (PRs) and Translations
- Change the "English" link in the language selector at each navigation bar to the link on the website.

If you are familiar with the translated language(s), you can help us review the translations and the PRs. Please head over to the "[Reviewer Process Guide](#reviewer-process-guide)" section for more information.
- In the `docs\_navbar.md`:

## Adding Translations
```markdown
- [:us: English](https://intro.opensauced.pizza/#/)
```

First, please read our [Contributing Guide](CONTRIBUTING.md) to setting up the project locally and for the technical instruction. Then, follow these steps to add the translations:
- In the `docs\intro-to-oss\_navbar.md`

1. **Identify target languages**.
```markdown
- [:us: English](https://intro.opensauced.pizza/#/intro-to-oss/README)
```

Determine which languages you want to add translations for. Make sure these languages are relevant to the project's user base.
- In the `docs\becoming-a-maintainer\_navbar.md`

2. **Create translation files**.
```markdown
- [:us: English](https://intro.opensauced.pizza/#/becoming-a-maintainer/README)
```

1. Open the course directory inside the `docs` folder.
2. Open the `translations` directory.
3. Create a new subdirectory for each language you plan to support. Use language codes (e.g., "en" for English, "fr" for French, etc.) as directory names.
- Add the following note to the top of the README located in the root:

```markdown
.
└── translations/
├── en/
├── fr/
└── es/
```
```markdown
> [!NOTE]
> This repository is one of the community translations of the [Open Source Education Path with OpenSauced](https://intro.opensauced.pizza/#/README).
```

3. **Translate content**.
### 4. Creating Contributing Guidelines for the Forked Repository
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm torn between making this as a section as is or making it part of the list in the "3. Organizing the Project for Translation" section.


- For each language directory, create translated versions of the documentation files. Typically, you translate Markdown files but consider other formats as needed.
- Maintain the same file names and structure as in the original documentation but with translated content.
You have complete control of how you want contributors to contribute to your forked repo. Therefore, you want to create contributing guidelines for contributors to contribute to your forked repo.

4. **Update links**.
You can name this file anything _except_ `CONTRIBUTING.md`. For example: `contributing-jp.md`.

In the translated files, ensure that any internal links (e.g., links to other sections or pages within the documentation) are updated to point to the corresponding translated content.
Put the file in the `contributing` folder at the root. Then, add the link to it in the "[🤝 Contributing](../README.md#-contributing)" section on the root README as below:

5. **Add a language selector**.
```markdown
- For information on how to contribute to this translations repository, check out our [Translations Contributing Guidelines](LINK-TO-YOUR-FORKED-REPOSITORY-CONTRIBUTING-FILE).
```

Adding a language selector to the documentation allows users to switch between languages. You can do this by modifying the languages menu on the navigation bar:
### 5. Working with Translations

1. Open the `docs` directory.
2. Open the `_navbar.md` file in the course directory.
3. In the "Languages" list, add a link to your translated language that includes the icon of the country's flag. Refer to the shortcode column in this [Country Flag emoji cheat sheet](https://github.com/ikatyang/emoji-cheat-sheet#country-flag) to help you.
The translation process will take time, but don't let this stop you from making the translations available to the public.

```markdown
- [:jp: Japanese](/translations/jp/)
```
What you need to know when working with translations:

6. **Testing and validation**.

Test the translated documentation to ensure accuracy and readability. Ensure all links work correctly and the content is culturally appropriate.

7. **Submit translations**.
- Maintain the original project's file names and structure, but replace all content with the translations.
- Ensure there are no broken links and that all links navigate to the correct paths.
- Maintain consistency in terminology and style throughout the translated documentation.
- Keep translations up to date with changes in the original documentation.
- When a course, a chapter, or a section hasn't been translated, keep and translate the titles and replace the content with the below note:

If you haven't already, submit your translations as a PR. Ensure you provide clear information about the languages you've translated and any specific details related to your contributions.
```markdown
We are working on translating this section. In the meantime, head to the [Section Title](LINK-TO-THE-SECTION-ON-OPENSAUCED-COURSE) at OpenSauced.

8. **Collaborate and review**.
If you'd like to help us translate this course, please read our [Translations Contributing Guidelines](LINK-TO-YOUR-FORKED-REPOSITORY-CONTRIBUTING-FILE).
```

Collaborate with other contributors and reviewers to ensure the quality of translations. Be open to feedback and suggestions for improvement.
Add the link to the course, chapter, or section of our [Open Source Education Path](https://intro.opensauced.pizza/#/). You can also translate this note.

### Best Practices for Translations
### 6. Setting up the Deployment Platform

- Maintain consistency in terminology and style throughout the translated documentation.
- Work with another contributor who speaks the language you're translating to.
- It helps to mention specific tools you use so developers who want to translate documentation can see how it's done.
- Keep translations up to date with changes in the original documentation.
Now that your forked repository is set up, it's time to deploy the translations.

## Reviewer Process Guide
This project is built with [docsify](https://docsify.js.org/). On their official website, you can read the [deployment guide](https://docsify.js.org/#/deploy) to deploy your forked repository. You can choose which platform you want to deploy and host the translation on.

When it comes to reviewing a translation PR, ask yourself the following questions:
### 7. Adding Translation in the Community Translations Page

- Does the current translation match the instructions in the English version?
- Are there links that could be localized and translated? (e.g., Wikipedia and MDN links)
- Is the translation correctly written following the translated language's norms and practices?
Now, you can add your forked repository to our [Community Translations](community-translations.md) page so the translations can reach a larger audience. Follow the instructions in the file to add the repository.

When you think a PR is ready to be merged after your suggestions were addressed (if any), approve it through GitHub's "Review Changes" button or leave an "LGTM!" in the comment section and tag the `@open-sauced/docs` maintainers.
## Community

?> “LGTM” is an abbreviation of “Looks Good to Me” or “Let’s Get to Merging”, often used to approve pull requests.
If you have questions or need help from others in translating our Open Source Education Path, you can join and reach out to the [Community](https://github.com/open-sauced/intro/discussions).
16 changes: 4 additions & 12 deletions docs/community-translations.md
Original file line number Diff line number Diff line change
@@ -1,17 +1,9 @@
# Community Course Translations
# Community Translations

We are grateful for the contributions of the community in translating our courses. Although the OpenSauced team does not currently maintain these projects, we want to share the forked copy of the repositories with those taking the course. Below, you will find the latest community translations.

## Intro to Open Source Course

<!-- Use below format to list your repository -->
<!--
- [Language](link to your forked repository) - maintain by [GitHub username](link to your GitHub profile)
-->

## Becoming a Maintainer Course

<!-- Use below format to list your repository -->
<!-- Use below format to list your forked repository -->
<!--
- [Language](link to your forked repository) - maintain by [GitHub username](link to your GitHub profile)
- [Language](FORKED-REPOSITORY-URL) — maintain by: [GitHub username](YOUR-GITHUB-PROFILE-URL)
-->
<!-- Change "Language" to the translation language -->
Loading