Transactions API
Transactions Api é um projeto Node.js construído para fins de estudo. Uma API HTTP Rest é implementada com Typescript, Fastify, Knex, PostgreSQL e muito mais.
Back End
NodeJs
TypeScript
Fastify
Zod
Vitest
Supertest
Carregando ...
Sobre
Transactions Api é um projeto Node.js construído para fins de estudo. Uma API HTTP Rest é implementada com Typescript, Fastify, Knex, PostgreSQL e muito mais.
Com esta API é possível criar e listar transações. Cada transação tem um título, uma quantia em dinheiro e um tipo (crédito ou débito).
O aplicativo é totalmente testado com testes E2E feitos com Vitest e Supertest.
Requisitos funcionais
O usuário deve ser capaz de criar uma nova transação
O usuário deve ser capaz de obter um resumo de sua conta
O usuário deve ser capaz de listar todas as transações já ocorridas
O usuário deve ser capaz de visualizar uma única transação
Requisitos não Funcionais
A transação pode ser do tipo crédito que vai somar no valor total, ou débito vai subtrair
Deve ser possível identificar o usuário entre as requisições
O usuário só pode visualizar as transações que ele mesmo criou
Rotas
Método HTTP | Endpoint | Descrição |
---|---|---|
GET | /transactions | Retorna uma lista das transações |
POST | /transactions | Cria uma nova transação |
GET | /transactions/:id | Retorna uma transação com o id fornecido |
GET | /summary | Retorna um resumo das transações |
Tecnologias
Algumas tecnologias utilizadas para construção da aplicação.
Rodar o servidor
Clone o repositório
Para rodar o projeto localmente
- Crie um arquivo
.env
na raiz do projeto e preencha as variáveis ambiente, o exemplo de como deve ficar esta em.env.example
.
Instale as dependências
Crie o banco de dados local
Rodar as migrations
Iniciar servidor
Executando testes E2E
- Criar arquivo
.env.test
baseado em.env.test.example
- Execute
npm test