- Nest.Js
- Docker
- Prisma ORM
- PostgreSQL
As principais funcionalidades dessa aplicação são:
- Realizar pedidos de sucos e produtos;
- Realizar entrega de pedidos na Estação selecionada;
Responsável pela gestão de autorizações dentro da aplicação.
- Realizar login;
- Autenticação via JWT;
Responsável pela gestão dos usuários e clientes cadastrados na plataforma.
- Buscar Usuário por ID;
- Buscar Usuário por Username;
Responsável pela gestão de Produtos, Receitas e Ingredientes da aplicação.
- Buscar Produto por ID;
- Pesquisar Produto;
- Listar todos os Produtos;
Responsável pela gestão das maquinas e operação realizada pela mesmas.
- Buscar Estação por ID;
- Listar todas as Estações
Todo projeto está disponível para uso via Docker Compose.
Para rodar o projeto via Docker bastar executar os seguintes comandos na pasta raiz do projeto:
docker-compose build --no-cache
docker-compose up
Após a execução verifique em seu docker se os containers foram criados com sucesso.
A API está disponível na porta localhost:3000 e o Banco de Dados na localhost:5532.
Todas as rotas da aplicação estão protegidas pelo um Guard JWT. Desta forma, é necessário realizar login na aplicação através da seguinte rota
POST /auth/login
Body :
{
"username": "carlossilva",
"password": "senha123"
}
Respostas:
Caso sucesso
Http code: 200 body:
{
"access_token": "seu-token-acesso"
}
Caso falha Http code: 401 body:
{
"message": "Invalid credentials"
}
A documentação do restante da aplicação está localizado na pasta 'docs' em uma collection do ThunderClient.