Skip to content

Commit

Permalink
#TR-55 - add translations and guide (#5)
Browse files Browse the repository at this point in the history
* chore: add i18n plugin
* chore: create pt locale
* chore: create en locale
* chore: add readme
  • Loading branch information
ashtrindade authored Jul 28, 2024
1 parent 74ebb67 commit 2ecd426
Show file tree
Hide file tree
Showing 21 changed files with 333 additions and 12 deletions.
22 changes: 22 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# Development Guide

## Requirements

- Python 3.x
- pip

## Usage

1. Install

```sh
pip install -r requirements.txt
```

2. Run locally

```sh
mkdocs serve
```

3. Open [localhost:8000](http://localhost:8000).
3 changes: 0 additions & 3 deletions docs/contribute/translation.md

This file was deleted.

59 changes: 59 additions & 0 deletions docs/en/contribute/backend.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
# Backend contribution guide

!!! warning "Page under construction."

<!-- Guide description -->

## Architecture

<!-- Explain the architecture -->

## Technologies

<!-- Technologies used -->

## Coding standards

<!-- Coding standards -->

## Tests

<!-- Unit and integrated tests -->

## Libraries

### Our libraries

<!-- Our libraries -->

### Third-party libraries

<!-- Third-party libraries -->

## Database

<!-- Database used -->

## Security

<!-- Security -->

## Documentation

### Swagger

<!-- Swagger -->

### Postman

<!-- Postman -->

## Submit your contribution

### Issues

<!-- Issues -->

### Fork and Pull Request

<!-- Fork and Pull Request -->
3 changes: 3 additions & 0 deletions docs/en/contribute/design.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Design contribution guide

!!! warning "Page under construction."
71 changes: 71 additions & 0 deletions docs/en/contribute/docs.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
# Documentation contribution guide

Documentation is an essential part of any project, as it is through it that users and developers can understand how the project works, how to use it, and how to contribute to it. Therefore, it is important that the documentation is clear, objective, and complete.

## Tools

To write the project documentation, we use Markdown, a simple and easy-to-learn markup language. With Markdown, it is possible to create documents with basic formatting, such as titles, lists, links, images, among others. To render the documentation website, we use [MkDocs](https://www.mkdocs.org/) with the [Material for MkDocs](https://squidfunk.github.io/mkdocs-material/) theme.

To view the documentation in real time, we recommend using [VS Code](https://code.visualstudio.com/), a free and open source code editor that has native support for Markdown.

!!! tip "Tip"
To install VS Code, go to the [official website](https://code.visualstudio.com/) and download the version compatible with your operating system.

### Recommended extensions

- [markdownlint](https://marketplace.visualstudio.com/items?itemName=DavidAnson.vscode-markdownlint) to check Markdown formatting.
- [Markdown Preview Github Styling](https://marketplace.visualstudio.com/items?itemName=bierner.markdown-preview-github-styles) to view documentation in real time.
- [Error Lens](https://marketplace.visualstudio.com/items?itemName=usernamehw.errorlens) to highlight Markdown formatting errors.
- [Code Spell Checker](https://marketplace.visualstudio.com/items?itemName=streetsidesoftware.code-spell-checker) and [Brazilian Portuguese - Code Spell Checker](https://marketplace.visualstudio.com/items?itemName=streetsidesoftware.code-spell-checker-portuguese-brazilian) to check the spelling of the text. This same creator has other extensions for other languages.

## Writing standards

To maintain consistency and quality of the documentation, it is important to follow some writing standards. Below, we list some guidelines that should be followed when contributing to the project's documentation:

1. **Clarity**: The documentation must be clear and objective, avoiding unnecessary technical terms and jargon. Try to explain the concepts in a simple and direct way, so that anyone can understand.
2. **Organization**: The documentation must be organized into sections and subsections, to facilitate reading and navigation. Use headings and subheadings to divide content into smaller, more digestible chunks.
3. **Consistency**: Maintain consistency in text formatting, using the same structure and style throughout the documentation. This includes the use of headings, lists, links, images, and other elements.
4. **Proofreading**: Check the text for spelling and grammar before submitting your contribution. Typos and grammar errors can make the documentation difficult to understand.
5. **Updating**: Keep the documentation up to date, reflecting the latest changes and developments in the project. If any information is out of date, correct it or add a note informing the change.
6. **Accessibility**: Make sure the documentation is accessible to all users, including those with visual or hearing impairments. Use alternative text descriptions for images and videos, and provide transcripts for audio content. 7. **References**: Whenever possible, include references and links to other sources of information, such as tutorials, guides, and official documentation. This helps users delve deeper into the subject and find more resources on the topic.

## Basic Markdown syntax

Below, we list some basic Markdown formatting elements to help you write documentation:

| Element | Syntax |
| --- | --- |
| Title | `#` to create titles and subtitles. The more `#`, the smaller the title. |
| Bold | `**text**` to make the text bold. |
| Italic | `*text*` to make the text italic. |
| List | `- item` to create an unordered list. |
| Link | `[text](url)` to create a link. |
| Image | `![alt](url)` to insert an image. |
| Image with link | `[![alt](url)](url)` to insert a linked image. |
| Code | `` `code` `` to highlight code snippets. |
| Code block | `` ```code``` `` to create a code block. |
| Quote | `> text` to create a quote. |

For more information on Markdown formatting, see the [official documentation](https://www.markdownguide.org/basic-syntax/). Also see the [Material for MkDocs](https://squidfunk.github.io/mkdocs-material/reference/) references.

## Submit your contribution

!!! warning "Important"
Before submitting your contribution, check if there is already an [issue](https://github.com/TableRise/docs/issues) open for the problem or suggestion you want to address. Otherwise, create a new issue describing what you intend to do.

### Pull Request

1. Fork the desired repository. For example, [this repository](https://github.com/TableRise/docs).
2. Clone the repository to your local machine: `git clone https://github.com/<USER>/<REPOSITORY>.git`.
3. Create a branch for your contribution: `git checkout -b feat/<ISSUE_ID>/your-contribution-name`.
4. Make any necessary changes to the documentation.
5. Check that the documentation is formatted correctly.
6. Add and commit the changes: `git add . && git commit -m "Add your-contribution-name"`.
7. Push to your branch: `git push origin feat/<ISSUE_ID>your-contribution-name`.
8. Create a Pull Request to the `main` branch of the original repository.
9. Wait for your contribution to be reviewed and approved.

After following these steps, your contribution will be evaluated by the responsible team and, if approved, will be incorporated into the project documentation.

!!! success "Congratulations"
Thank you for contributing! 🚀
3 changes: 3 additions & 0 deletions docs/en/contribute/frontend.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Frontend contribution guide

!!! warning "Page under construction."
55 changes: 55 additions & 0 deletions docs/en/contribute/guide.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# How to contribute

There are several ways to contribute to the project, whether through code, documentation, design, translation, testing, review, among others. Below, you will find a guide on how to contribute to the project.

## Frontend

!!! abstract "User experience"
You can help by creating new features, fixing bugs, improving the interface, among others.

[Access the frontend guide ↗️](frontend.md){ .md-button }

---

## Backend

!!! abstract "Working on the server"
You can help improve server performance by creating new routes, fixing bugs, improving security, among others.

[Access the backend guide ↗️](backend.md){ .md-button }

---

## Documentation

!!! abstract "Help is coming"
Help improve the project documentation by creating new guides, correcting errors, improving organization, among others.

[Access the documentation guide ↗️](docs.md){ .md-button }

---

## Design

!!! abstract "Project appearance"
Help improve the project design by creating new interfaces, correcting errors, improving the user experience, among others.

[Access the design guide ↗️](design.md){ .md-button }
---

## Translation

!!! abstract "Accessibility"
Help improve the project accessibility by translating the documentation, interfaces, messages, among others.

[Access the translation guide ↗️](translation.md){ .md-button }

---

## Tests

!!! abstract "Project Quality"
Help improve the quality of the project by creating new tests, fixing bugs, improving coverage, among others.

[Access the testing guide ↗️](tests.md){ .md-button }
---
3 changes: 3 additions & 0 deletions docs/en/contribute/tests.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Tests contribution guide

!!! warning "Page under construction."
27 changes: 27 additions & 0 deletions docs/en/contribute/translation.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# Translation contribution guide

## Add a new language

In the `mkdocs.yml` file, look for `i18n` in the plugins section. Then, add the language you want to translate in the format below:

```yaml
- locale: pt # language code, must be the same as the folder
name: Portuguese # name of the language that will be displayed in the translation bar
build: true # enable translation, must be `true`
nav: # translate the navigation bar
- xx: xx.md # translate the navigation bar item
# add other navigation bar items
```

In the `docs` folder, create a folder for the new language with the code that is in `mkdocs.yml`.

!!! tip "Tip"
To ensure that all files will be translated, copy the original language folder and rename it to the new language.
**Example**: `docs/pt` to `docs/es`.

!!! danger "Important"
Do not change the filenames.

Run `mkdocs serve` to run the project locally and check if the language was translated correctly.

If everything is correct, create a new Pull Request as per the [contributing guide](docs.md/#pull-request) for the new translation.
28 changes: 28 additions & 0 deletions docs/en/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# TableRise

TableRise is a project created with the goal of helping junior professionals who have not yet had the opportunity to gain experience in projects aligned with the job market. In addition, it was designed with players passionate about RPG in mind, offering a dynamic and fun experience.

## Stacks

![Node.js](https://img.shields.io/badge/node.js-6DA55F?style=for-the-badge&logo=node.js&logoColor=white)
![Jest](https://img.shields.io/badge/-jest-%23C21325?style=for-the-badge&logo=jest&logoColor=white)
![Mocha](https://img.shields.io/badge/mocha.js-323330?style=for-the-badge&logo=mocha&logoColor=Brown)
![Chai](https://img.shields.io/badge/chai.js-323330?style=for-the-badge&logo=chai&logoColor=red)
![Sinon](https://img.shields.io/badge/sinon.js-323330?style=for-the-badge&logo=sinon)
![Docker](https://img.shields.io/badge/docker-%230db7ed.svg?style=for-the-badge&logo=docker&logoColor=white)
![Typescript](https://img.shields.io/badge/typescript-%23007ACC.svg?style=for-the-badge&logo=typescript&logoColor=white)
![Javascript](https://img.shields.io/badge/JavaScript-F7DF1E?style=for-the-badge&logo=javascript&logoColor=black)
![Express.js](https://img.shields.io/badge/express.js-%23404d59.svg?style=for-the-badge&logo=express&logoColor=%2361DAFB)
![MongoDB](https://img.shields.io/badge/MongoDB-%234ea94b.svg?style=for-the-badge&logo=mongodb&logoColor=white)
![Redis](https://img.shields.io/badge/redis-%23DD0031.svg?&style=for-the-badge&logo=redis&logoColor=white)
![React.js](https://img.shields.io/badge/React-20232A?style=for-the-badge&logo=react&logoColor=61DAFB)
![Socket.io](https://img.shields.io/badge/Socket.io-black?style=for-the-badge&logo=socket.io&badgeColor=010101)
![Tailwind CSS](https://img.shields.io/badge/Tailwind_CSS-38B2AC?style=for-the-badge&logo=tailwind-css&logoColor=white)
![HTML5](https://img.shields.io/badge/HTML5-E34F26?style=for-the-badge&logo=html5&logoColor=white)
![CSS3](https://img.shields.io/badge/CSS3-1572B6?style=for-the-badge&logo=css3&logoColor=white)

## Contributions

Contributions are always welcome! There are many ways to contribute to the project, including code, documentation, design, translation, testing, review, and more. Visit the [contributing guide](contribute/guide.md) to learn more.

<!-- adicionar pessoas -->
File renamed without changes.
File renamed without changes.
2 changes: 1 addition & 1 deletion docs/contribute/docs.md → docs/pt/contribute/docs.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ Para mais informações sobre a formatação do Markdown, consulte a [documenta
!!! warning "Importante"
Antes de enviar sua contribuição, verifique se já existe uma [issue](https://github.com/TableRise/docs/issues) aberta para o problema ou a sugestão que você deseja abordar. Caso contrário, crie uma nova issue descrevendo o que você pretende fazer.

### Fork e Pull Request
### Pull Request

1. Faça um fork do repositório desejado. Por exemplo, [este repositório](https://github.com/TableRise/docs).
2. Clone o repositório para a sua máquina local: `git clone https://github.com/<USUÁRIO>/<REPOSITÓRIO>.git`.
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
27 changes: 27 additions & 0 deletions docs/pt/contribute/translation.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
# Guia de contribuição para tradução

## Adicionar novo idioma

No arquivo `mkdocs.yml`, procure por `i18n` na seção de plugins. Em seguida, adicione o idioma que deseja traduzir no formato abaixo:

```yaml
- locale: pt # código do idioma, deve ser o mesmo da pasta
name: Português # nome do idioma que será exibido na barra de tradução
build: true # habilitar tradução, deve estar como `true`
nav: # traduzir a barra de navegação
- xx: xx.md # traduzir o item da barra de navegação
# adicione outros itens da barra de navegação
```

Na pasta `docs`, crie uma pasta para o novo idioma com o código que está no `mkdocs.yml`.

!!! tip "Dica"
Para garantir que todos os arquivos serão traduzidos, copie a pasta do idioma original e renomeie-a para o novo idioma.
**Exemplo**: `docs/pt` para `docs/es`.

!!! danger "Importante"
Não altere o nome dos arquivos.

Execute `mkdocs serve` para executar o projeto localmente e verificar se o idioma foi traduzido corretamente.

Se tudo estiver correto, crie um novo Pull Request conforme o [guia de contribuição](docs.md/#pull-request) para a nova tradução.
File renamed without changes.
39 changes: 32 additions & 7 deletions mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ site_description: Documentação oficial do TableRise
site_url: https://docs.tablerise.com
site_author: TableRise

repo_name: Editar no GitHub
repo_name: GitHub
repo_url: https://github.com/TableRise/docs

nav:
Expand All @@ -25,29 +25,27 @@ theme:
type: material/alert-circle
logo: assets/tablerise.png
favicon: assets/tablerise.png
language: pt-BR

palette:
# Default color palette
# default palette
- scheme: default
toggle:
icon: material/weather-night
name: Switch to dark mode
name: Dark mode
primary: black
accent: deep purple

# Palette toggle for dark mode
# dark mode palette
- scheme: slate
toggle:
icon: material/weather-sunny
name: Switch to light mode
name: Light mode
primary: black
accent: deep purple

features:
- navigation.footer
- navigation.top
# - toc.integrate

extra:
social:
Expand All @@ -61,3 +59,30 @@ markdown_extensions:
custom_fences:
- name: mermaid
class: mermaid

plugins:
- i18n:
docs_structure: folder
languages:
# default language, do not remove
- locale: pt
default: true
name: Português
build: true

# translations
- locale: en
name: English
build: true
nav:
- Home: index.md
- Contribute:
- Guide: contribute/guide.md
- Documentation: contribute/docs.md
- Design: contribute/design.md
- Frontend: contribute/frontend.md
- Backend: contribute/backend.md
- Tests: contribute/tests.md
- Translation: contribute/translation.md

# add more languages below this line
Loading

0 comments on commit 2ecd426

Please sign in to comment.