Esta API foi projetada para gerenciar o cadastro de refeições, oferecendo um conjunto completo de funcionalidades CRUD (Create, Read, Update, Delete). Ela garante a segurança dos dados através de autenticação BasicAuth, assegurando que apenas usuários autorizados possam acessar e manipular as informações das refeições.
• Node.js | • Typescript | • Fastify | • zod
• Knex | • Postgres | • Docker
Clone o projeto e execute os comandos abaixo para configurar e iniciar a API.
De uma olhada no .env.example para configurar as variáveis de ambiente. Após configurar o .env, execute o docker compose para iniciar o banco de dados.
npm install
Instalar as dependencias da aplicação.
npm run dev
O comando npm run dev iniciará o servidor localmente. Certifique-se de ter o Node.js instalado em sua máquina. url padrão http://localhost:3000
npm run knex -- migrate:latest
Executa as migrations necessárias para utilizar a API.
Rota | Descrição |
---|---|
POST /user/ | Cria um usuário. |
Para chamar os endpoints da API, você deve fornecer um cabeçalho de autenticação BasicAuth com as credenciais de usuário.
Rota | Descrição |
---|---|
POST /food/ | Cadastra uma nova transação. |
GET /food/:id | Recupera uma transação. |
GET /food/metrics | Recupera todas as transações. |
GET /food/balance | Recupera o balanço(resumo) da conta. |
PUT /food/:id | Cadastra uma nova transação. |
DELETE /food/:id | Cadastra uma nova transação. |
{
"title": "string",
"amount": "number",
"type": "debit | credit"
}
Certifique-se de fornecer dados válidos para cada campo conforme o esquema acima.
Este README fornece uma visão geral detalhada do projeto, incluindo instruções claras sobre como configurar, usar e testar a API. Se tiver alguma dúvida ou sugestão, não hesite em entrar em contato ou contribuir para o projeto!