|
|
|
# Guia de Contribuição - VolunteerSmile
|
|
|
|
|
|
|
|
Bem-vindo ao guia de contribuição do projeto **VolunteerSmile**! Este documento serve como referência para todos os desenvolvedores que trabalham nos repositórios do projeto.
|
|
|
|
|
|
|
|
## Repositórios
|
|
|
|
|
|
|
|
O projeto é dividido nos seguintes repositórios:
|
|
|
|
|
|
|
|
* **Backend**: `volunteersmile-backend`
|
|
|
|
* **Frontend Web**: `volunteersmile-frontend-web`
|
|
|
|
* **Frontend Mobile**: `volunteersmile-frontend-mobile`
|
|
|
|
|
|
|
|
## Como Começar
|
|
|
|
|
|
|
|
1. **Clone o repositório** desejado.
|
|
|
|
2. Siga as instruções específicas de instalação e execução contidas no `README.md` de cada repositório.
|
|
|
|
|
|
|
|
## Como Contribuir
|
|
|
|
|
|
|
|
Para garantir a organização e a qualidade do código, adotamos as seguintes práticas.
|
|
|
|
|
|
|
|
### 1. Estratégia de Branches
|
|
|
|
|
|
|
|
Todo o desenvolvimento deve ser feito em branches separadas, criadas a partir da branch `dev`.
|
|
|
|
|
|
|
|
**Padrão de Nomenclatura:**
|
|
|
|
|
|
|
|
Use o formato `<tipo>/<descrição-curta>/<issue-id>` para nomear suas branches.
|
|
|
|
|
|
|
|
* `<tipo>`: Define o propósito da branch.
|
|
|
|
* `feature`: Para novas funcionalidades.
|
|
|
|
* `fix`: Para correção de bugs.
|
|
|
|
* `docs`: Para melhorias na documentação.
|
|
|
|
* `chore`: Para tarefas de manutenção (ex: atualizar dependências).
|
|
|
|
* `<descrição-curta>`: Um resumo do que está sendo feito (ex: `tela-login`).
|
|
|
|
* `<issue-id>`: O ID da tarefa ou issue relacionada.
|
|
|
|
|
|
|
|
**Exemplos:**
|
|
|
|
|
|
|
|
* `feature/login-de-usuario/86b64ef8m`
|
|
|
|
* `fix/bug-no-cadastro/86b64ef8m`
|
|
|
|
* `docs/atualizar-guia-contribuicao/86b64ef8m`
|
|
|
|
|
|
|
|
### 2. Padrão de Commits (Conventional Commits)
|
|
|
|
|
|
|
|
Adotamos o padrão **Conventional Commits** para manter o histórico de commits limpo e legível.
|
|
|
|
|
|
|
|
`<tipo>(<escopo>): <descrição>`
|
|
|
|
|
|
|
|
**Formato do Commit:**
|
|
|
|
|
|
|
|
* **`<tipo>`**:
|
|
|
|
* `feat`: Uma nova funcionalidade.
|
|
|
|
* `fix`: Uma correção de bug.
|
|
|
|
* `docs`: Alterações na documentação.
|
|
|
|
* `style`: Mudanças de formatação que não afetam o código.
|
|
|
|
* `refactor`: Refatoração de código.
|
|
|
|
* `test`: Adição ou correção de testes.
|
|
|
|
* `chore`: Atualizações de build, dependências, etc.
|
|
|
|
* **`<escopo>` (opcional)**: O módulo ou parte do código que foi alterado (ex: `auth`, `api`, `ui`).
|
|
|
|
* **`<descrição>`**: Um resumo claro e conciso do que foi feito.
|
|
|
|
|
|
|
|
**Exemplos de Commits:**
|
|
|
|
|
|
|
|
`feat(auth): implementa login com email e senha`
|
|
|
|
`fix(api): corrige erro 500 ao listar voluntários`
|
|
|
|
`docs(readme): atualiza instruções de como rodar o projeto`
|
|
|
|
`style(ui): ajusta espaçamento do botão de login`
|
|
|
|
|
|
|
|
### 3. Processo de Pull Request (PR)
|
|
|
|
|
|
|
|
1. Crie sua branch a partir da `dev`.
|
|
|
|
2. Realize o desenvolvimento e faça os commits seguindo o padrão.
|
|
|
|
3. Ao concluir, envie suas alterações para o repositório remoto (`git push`).
|
|
|
|
4. Abra um **Pull Request** da sua branch para a branch `dev`.
|
|
|
|
5. No PR, descreva as alterações realizadas e, se aplicável, vincule a issue correspondente.
|
|
|
|
6. Aguarde a revisão e aprovação de pelo menos **um revisor** (AGES III ou superior) e espere o merge ser feito por quem revisou |
|
|
|
\ No newline at end of file |