- Typescript
- NodeJS
- Express
- Prisma
- Postgres
- Vitest
- Rotas CRUD de usuários
- Rotas CRUD de tasks
- Arquitetura MVC com princípios de SOLID e Clean Architecture
- Sistema de autenticação JWT
- Testes unitários não dependentes de banco de dados
- Testes end-to-end
- Sistema de gerenciamento de erros
- Clone o repositório
git clone https://github.com/JoaoManoelFontes/Project-kanban-api
- Instale as dependências
npm install
ouyarn install
- Crie um arquivo .env na raiz do projeto e o preencha com as variáveis de ambiente que estão no arquivo
.env.example
, substituindo os valores das variáveis de ambiente pelos valores desejados- Caso não tenha um banco de dados postgres, execute o comando
npx run docker:init-db
ouyarn docker:init-db
para criar um container docker com o banco de dados postgres (é necessário ter o docker instalado)
- Caso não tenha um banco de dados postgres, execute o comando
- Rode as migrations
npx prisma migrate dev
ouyarn prisma migrate dev
- Rode a aplicação
npm run dev
ouyarn dev
- Acesse a aplicação em
http://localhost:3333
- Rode os testes unitários
npm run test:unit
ouyarn test:unit
- Rode os testes end-to-end (funcionalidade não finalizada)
- Execute o comando
npm run pretest:e2e
ouyarn pretest:e2e
para iniciar o servidor de testes - Execute o comando
npm run test:e2e
ouyarn test:e2e
para rodar os testes end-to-end
- Execute o comando
- Rode os testes de cobertura para testes unitários
npm run test:unit:coverage
ouyarn test:unit:coverage
- Teste a aplicação com o REST Client
- Para testar a aplicação com o REST Client, instale a extensão REST Client no VSCode e execute os requests da pasta
client
- Os testes também podem ser feitos com o Insomnia, Postman ou outro software de sua preferência
- Para testar a aplicação com o REST Client, instale a extensão REST Client no VSCode e execute os requests da pasta