Balancea é uma aplicação de controle de orçamento familiar que permite aos usuários cadastrarem suas receitas e despesas mensais, com categorização das despesas e geração de relatórios financeiros detalhados. A aplicação é ideal para aqueles que desejam ter uma visão clara sobre suas finanças, auxiliando no controle e planejamento de gastos.
- Cadastro de Receitas
- Valor: Valor da receita.
- Descrição: Descrição da receita.
- Data: Data em que a receita foi recebida.
{
"valor": 1000,
"descricao": "Salário",
"data": "03/10/2024"
}
- Cadastro de Despesas
- Valor: Valor da despesa.
- Descrição: Descrição da despesa.
- Categoria: Categoria da despesa (Ex.: Alimentação, Transporte).
- Data: Data em que a despesa foi realizada.
{
"valor": 200,
"descricao": "Jantar",
"categoria": "ALIMENTACAO",
"data": "03/10/2024"
}
- Listagem de Receitas/Despesas
- Exibe uma listagem completa das receitas e despesas cadastradas, podendo listar por:
- Ano e Mês
- Paginação
- Query
- Por ID
- Relatório Mensal
- Gera um relatório detalhado com:
- Total de receitas.
- Total de despesas.
- Saldo total.
- Total de despesas por categoria.
{
"totalIncome": 1000.0,
"totalExpense": 500.0,
"totalBalance": 500.0,
"totalExpenseByCategory": [
{
"category": "ALIMENTACAO",
"total": 200.0
},
{
"category": "TRANSPORTE",
"total": 300.0
}
]
}
- Autenticação e Autorização
- Autenticação JWT para proteger as rotas e assegurar que apenas usuários autenticados possam acessar os dados financeiros.
- Documentação
- Utilização do Swagger para documentação da API.
- Acesse a documentação na sua máquina local via
http://localhost:8080/
- Java 17 ou superior
- IDE (Eclipse, IntelliJ, VSCode)
- Maven 3.2.5 ou superior
- Docker
- Clone o repositório na sua máquina:
git clone https://github.com/lucasmoraist/balancea-api.git
- Acesse o diretório do projeto:
cd balancea-api
- Crie um arquivo
.env
no diretório raiz do projeto e adicione as seguintes variáveis:
POSTGRES_USER=seu_usuario
POSTGRES_DB=seu_banco
POSTGRES_PASSWORD=sua_senha
POSTGRES_PORT=5432
JWT_SECRET=sua_chave_jwt
- Execute o Docker Compose para iniciar o banco de dados e a aplicação:
docker-compose up -d
- Acesse a aplicação na sua máquina local via
http://localhost:8080
- Com o projeto em execução, utilize uma ferramenta como Postman ou Insomnia para testar a API.
- Acesse o Swagger para visualizar e testar os endpoints disponíveis.