Back-end de uma aplicação de entregas
Projeto | Tecnologias | Executando a aplicação | Licença | Autor
Deliveries API é uma aplicação onde possui dois tipos de usuário, o cliente e o entregador.
O cliente pode cadastrar itens para serem entregues, listar, editar e/ou apagar.
O entregador poderá listar todos os itens disponíveis, escolher determinado item para realizar a entrega, listar os itens já escolhidos e marcar um item como entregue.
Quando o entregador marcar o item como entregue, o cliente recebe uma notificação informando-o que a entrega foi concluída.
Foi um projeto muito interessante de desenvolver, pois consegui aplicar diversos conceitos como:
- DDD
- Repository Pattern
- Testes unitários
- Testes E2E
- SOLID
- Clean Code
- Clean Architecture
- Entre muitos outros...
Esse projeto foi desenvolvido com as seguintes tecnologias:
-
Clone este repositório
-
Instale as dependências
npm install
-
Crie uma cópia do arquivo
.env.example
e renomeie para.env
-
Preencha todas as variáveis do arquivo
.env
, que foi copiado no passo anteriorAs variáveis
JWT_PRIVATE_KEY
eJWT_PUBLIC_KEY
precisam ser preenchidas respectivamente com as chaves RSA privada e pública, criptografadas em base64. Se tiver dúvidas de como gerar estas chaves, pesquise porgenerate RSA key online
ebase64 encode
para gerar as chaves sem muitas dificuldades.OBS.: Em ambiente de produção não é aconselhável utilizar as chaves que foram geradas online.
-
Inicie o container do banco de dados
docker-compose up -d
-
Crie todas as tabelas no banco de dados
npx prisma migrate dev
-
Inicie o servidor
npm run start:dev
Esse projeto está sob a licença MIT.
Feito com 💜 por Jordane Chaves