Documentação da Comunidade
Índice
- Como Contribuir
- Reportar Problemas
- Solicitar Funcionalidades
- Contribuir com Código
- Estrutura de Contribuição
- Estilo de Código
- Estrutura de Commits
- Tecnologias Utilizadas
- Licença
Como Contribuir
Reportar Problemas
Se você encontrar um bug ou problema, por favor, abra uma issue no repositório com os seguintes detalhes:
- Descrição clara e concisa do problema.
- Passos para reproduzir o problema.
- Comportamento esperado versus o comportamento real.
- Capturas de tela ou logs, se aplicável.
Solicitar Funcionalidades
Se você tiver uma ideia para uma nova funcionalidade, abra uma issue no repositório com os seguintes detalhes:
- Descrição da funcionalidade desejada.
- Justificativa para a funcionalidade (por que ela é importante).
- Especificações ou exemplos de como a funcionalidade deve funcionar.
Contribuir com Código
Se você deseja contribuir com código, siga os passos abaixo:
- Fork este repositório.
- Crie uma nova branch para sua funcionalidade/correção.
- Implemente suas alterações.
- Envie suas alterações e faça um pull request.
Estrutura de Contribuição
Estilo de Código
Mantenha o estilo de código consistente com o existente. Use as seguintes ferramentas para ajudar:
- ESLint para verificação de código JavaScript.
- Prettier para formatação de código.
Estrutura de Commits
- feat: Adição de nova funcionalidade.
- fix: Correção de bug.
- docs: Alterações na documentação.
- style: Alterações que não afetam a lógica do código (espaços em branco, formatação, etc.).
- refactor: Refatoração de código que não adiciona nova funcionalidade nem corrige bugs.
- test: Adição ou correção de testes.
- chore: Tarefas de manutenção.
Tecnologias Utilizadas
Backend
- Node.js: Ambiente de execução para JavaScript.
- Express: Framework web para Node.js.
- TypeScript: Superset de JavaScript que adiciona tipagem estática.
- Prisma ORM: Abstração de banco de dados para consultas e migrações.
- JWT: Autenticação e autorização baseada em tokens.
- Bcrypt: Hashing de senhas.
- Zod: Validação de esquemas de dados.
- Winston: Biblioteca de logging.
- Dotenv: Gerenciamento de variáveis de ambiente.
Frontend
- Next.js: Framework React para desenvolvimento de aplicações web.
- React: Biblioteca para construção de interfaces de usuário.
- JavaScript: Linguagem de programação.
- CSS: Linguagem de estilo para apresentação visual.
- HTML: Linguagem de marcação para estrutura de páginas web.
- Vercel: Plataforma de implantação projetada para otimizar e hospedar aplicações criadas com Nest.js.
- Chart.js: Biblioteca JacaScript para criar gráficos interativos, com alta personalização e fácil integração com React.
- Formik: Ferramenta para gerenciar formulários em React.
- Axios: Biblioteca JavaScript para realizar requisições HTTP, para comunicar o front com o back sem complicações.
Ferramentas de Testes
- Vitest: Testes unitários.
- Jest: Testes de unidade.
- Supertest: Testes de integração.
- Cypress: Testes end-to-end.
Licença
Este projeto está sob a licença MIT. Consulte o arquivo LICENSE para mais detalhes.