Este repositório contém uma pequena API de controle de entregas. O projeto foi criado com o objetivo de consolidar meus conhecimentos nas tecnologias utilizadas e faz parte da minha jornada para me tornar um desenvolvedor fullstack.
- Node.js e Express para criação da API.
- TypeScript para tipagem estática.
- Prisma como ORM com PostgreSQL.
- JWT para autenticação.
- Jest e Supertest para testes automatizados.
Rocketlog/
├── docker-compose.yml
├── jest.config.js
├── package.json
├── tsconfig.json
├── prisma/
│ ├── schema.prisma
│ └── migrations/
└── src/
├── app.ts
├── env.ts
├── server.ts
├── configs/
├── controllers/
├── database/
├── middlewares/
├── routes/
├── tests/
├── types/
└── utils/
-
Copie o arquivo
.env-examplepara.enve preencha as variáveisDATABASE_URL,JWT_SECRETePORT. -
Caso queira subir um banco de dados local, há um
docker-compose.ymlcom uma instância PostgreSQL pronta para uso. -
Instale as dependências:
npm install
-
Gere o cliente Prisma e aplique as migrações:
npx prisma generate npx prisma migrate deploy
-
Ambiente de desenvolvimento:
npm run dev
-
Construção para produção:
npm run build npm start
Para rodar os testes automatizados:
npm run test:devSinta-se à vontade para explorar o código e utilizar este projeto como referência ou ponto de partida para estudos e experimentações.