Skip to content

mathvsk/transactions-api-rest

Repository files navigation

Transactions API-REST

NodeJS Fastify SQLite TypeScript Static Badge

API de transações bancárias, utilizando Fastify, TypeScript, e Vitest (para testes unitários). O armazenamento e a criação do banco de dados são feitos utilizando Knex (query builder) com migrations e SQLite para persistência de dados.

Visão Geral

Esta API oferece uma maneira fácil e rápida de gerenciar transações bancárias, com endpoints para recuperar transações, obter o saldo da conta e cadastrar novas transações.

Como usar

Clone o projeto e execute os seguintes comandos:

npm install
npm run dev

O comando npm run dev iniciará o servidor localmente. Certifique-se de ter o Node.js instalado em sua máquina.

Testes

Para executar os testes unitários, utilize o comando:

npm run test

API Endpoints

A URL padrão do projeto é http://localhost:3000. Para alterar a porta, crie um arquivo .env e defina a variável PORT. Consulte o arquivo .env.example para um exemplo.

As requisições GET utilizam cookies para autenticação do usuário. Primeiro, é necessário chamar a rota POST para cadastrar o cookie no cabeçalho.

Rota Descrição
GET /transactions/ Recupera todas as transações.
GET /transactions/{id} Recupera uma transação.
GET /transactions/balance Recupera o balanço(resumo) da conta.
POST /transactions/ Cadastra uma nova transação.

Schemas

POST /transactions/

{
  "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!

About

CRUD de transações seguindo o padrão REST.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published