Sistema de gerenciamento financeiro pessoal desenvolvido durante o módulo Programação Web II no programa Santander Coders 2024.1.
O Minerva Money é uma aplicação de gerenciamento financeiro pessoal que permite aos usuários controlar suas finanças através do registro de transações, categorização de despesas e receitas, e acompanhamento de saldo. O sistema oferece recursos como múltiplas contas, categorias personalizáveis e relatórios financeiros.
Esta é a API REST do Minerva Money. Para a interface do usuário, confira nosso repositório front-end (opcional).
git clone git@github.com:dluks82/coders24-minerva-money.git
cd coders24-minerva-money
docker-compose up -d
.\mvnw.cmd spring-boot:run
git clone git@github.com:dluks82/coders24-minerva-money.git
cd coders24-minerva-money
docker compose up -d
./mvnw spring-boot:run
docker ps
http://localhost:8081
http://localhost:8081/swagger-ui.html
# Windows (PowerShell)
netstat -ano | findstr :5433
taskkill /PID [PID_NUMBER] /F
# Linux/macOS
lsof -i :5433
kill -9 [PID_NUMBER]
docker compose down -v
docker compose logs postgres
O diagrama de classes em formato PlantUML está disponível em diagrams/class-diagram.puml
.
User: Usuário do sistema
Account: Conta financeira
Transaction: Movimentação financeira
Category: Categoria de transação
Contas
Categorias
Transações
POST /auth/signup
- Cadastro de usuárioPOST /auth/login
- Login de usuárioGET /accounts
- Listar contasGET /accounts/{accountId}/dashboard
- Visualizar dashboardGET /accounts/{accountId}/balance
- Consultar saldoGET /category
- Listar categoriasPOST /category
- Criar nova categoriaGET /users/categories/custom
- Listar categorias personalizadasGET /users/categories/all
- Listar todas as categoriasPOST /users/categories/create-custom
- Criar categoria personalizadaDELETE /users/categories/delete
- Excluir categoria personalizadaGET /accounts/{accountId}/transactions
- Listar transaçõesPOST /accounts/{accountId}/transactions
- Criar transaçãoPOST /accounts/{accountId}/transactions/batch
- Criar múltiplas transaçõesGET /accounts/{accountId}/transactions/{transactionId}
- Buscar transaçãoDELETE /accounts/{accountId}/transactions/{transactionId}
- Excluir transaçãoGET /accounts/{accountId}/transactions/summary
- Obter resumoGET /users/me
- Obter dados do usuário autenticadoPATCH /users/{user_id}/role
- Atualizar role do usuárioDiogo Oliveira | Isaque Menezes | Rômulo Domingos | Samuel Quaresma |
Gostaríamos de expressar nossa gratidão ao instrutor e colaboradores do Santander Coders 2024.1, cujo apoio foi essencial para a conclusão deste projeto.
Este projeto está sob a licença especificada no arquivo LICENSE.