Servidor para site de gerenciamento de projetos e bug tracking
- Sobre o projeto
- Tecnologias e ferramentas
- Informações de contato
- Artigo
- Rodando localmente
- Rodando testes
- Arquitetura
Trabalho de Conclusão de Curso apresentado à Escola Técnica Estadual Elias Nechar, como parte dos requisitos para a obtenção do título de Técnico em Desenvolvimento de Sistemas.
Desenvolvido utilizando NodeJS e TypeScript.
Tecnologias de destaque:
- 🧪 Testes de unidade e de integração com biblioteca Jest
- 🔑 Autenticação JWT com biblioteca jsonwebtoken
- 📦 Fila de processamento de e-mails com biblioteca Bull e banco de dados Redis
- 📨 Envio de e-mails com biblioteca Nodemailer
- 📑 Banco de dados MongoDB para armazenamento de notificações
↔️ Estabelecendo conexão bidirecional com Socket.IO para atualizar informações em tempo real- 🐋 Conteinerização com Docker para isolar processos
- 🚢 Orquestração de contêineres com Docker Compose
Sinta-se livre para me contatar através de uma das plataformas abaixo
Faça o download do artigo aqui
Clone o repositório
git clone https://github.com/viniciusrodrigues1a/infinitum-apiVá ao diretório do projeto
cd infinitum-apiRenomeie o arquivo .env.example para .env e adicione as variáveis de ambiente
cp .env.example .env
nano .envInstale as dependências
yarn installInicie os contêineres do docker
docker-compose up --detach --buildO servidor deve iniciar na porta definida pela variável PORT no arquivo .env
Para rodar os testes de unidade, rode o seguinte comando
yarn test:unitPara rodar os testes de integração, rode o seguinte comando
yarn test:integrationO projeto segue a arquitetura Clean Architecture, separado em três módulos (usuários, projetos e issues).
Estrutura de pastas do projeto mostrando os diferentes módulos e suas camadas, conforme a Clean Architecture.
