Obrigado por contribuir com este projeto! Siga as orientações abaixo para mantermos o código organizado, padronizado e fácil de evoluir.
Este projeto segue o fluxo GitHub Flow, simples e direto para colaboração em equipe:
- Crie uma branch a partir da
main. - Faça commits pequenos e objetivos.
- Abra um Pull Request (PR) para revisão.
- Aguarde aprovação e faça o merge na
main. - A branch
mainé considerada estável e pode ser implantada em produção. - Após o merge, delete a branch para manter o repositório limpo.
- Siga a estrutura de pastas e camadas definida (ex:
api_certify/modules,api_certify/repositories,api_certify/services,api_certify/configs, etc). - Mantenha o padrão de injeção de dependência e repository pattern.
- Respeite o princípio da responsabilidade única (cada arquivo deve ter um propósito claro).
- Evite criar novas pastas ou camadas sem discutir antes com o time.
- Nomenclatura consistente:
UserRepository,UserService,UserController, etc. - Sempre implemente testes ou mocks quando adicionar novas regras de negócio.
- Utilize as ferramentas de lint/prettier antes de commitar.
-
Crie uma branch para cada nova feature, fix ou refatoração.
-
Nomeie as branches no formato:
feat/nome-da-feature fix/descricao-do-bug chore/ajuste-menor refactor/nome-da-refatoracao -
Sempre crie branches a partir da
main. -
Após o merge e deploy, delete a branch.
Siga o padrão de commits semânticos:
<tipo>(escopo opcional): descrição curta
Tipos comuns:
feat:nova funcionalidadefix:correção de bugdocs:mudança na documentaçãostyle:formatação, espaçamento, indentaçãorefactor:refatoração de códigotest:adição ou ajuste de testeschore:tarefas de build, configs, etc
Exemplos:
feat(auth): adiciona login com Google
fix(api): corrige erro de timeout na requisição
docs(readme): atualiza instruções de instalação
- Atualize sua branch com
mainantes de abrir o PR. - Resolva conflitos localmente antes de enviar.
- Descreva claramente o que foi feito e o motivo.
- PRs pequenos e objetivos são mais fáceis de revisar.
- Solicite revisão de outro desenvolvedor antes do merge.
- Após o merge, delete a branch.
- Commits genéricos como “update” ou “ajustes”.
- Arquivos desnecessários (
node_modules,.env,dist, etc) — use.gitignore. - Código sem lint, sem tipagem ou sem testes quando aplicável.
- Alterar padrões estruturais sem alinhamento prévio.
- Rodou os testes e o projeto está funcionando.
- Passou o lint/prettier.
- Seguiu os padrões de arquitetura e commit.
- Branch está atualizada com
main. - PR foi revisado antes do merge.
Código limpo, padronizado e bem descrito = projeto escalável e fácil de manter.