Loading repository data…
Loading repository data…
MatheusHBMelo / repository
Simulação de um sistema Bancário em Spring Boot
A transparent discovery signal based on current public GitHub metadata.
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
Esta é uma API Rest que fornece um CRUD para gerenciamento de um sistema bancário completo desenvolvido em Java utilizando o Spring Boot. A aplicação oferece funcionalidades como criação de usuários e contas, operações financeiras (transferência, depósito, saque e extrato), funções administrativas, envio de e-mails e autenticação segura baseada em JWT (JSON Web Token).
O objetivo deste projeto é demonstrar habilidades em desenvolvimento backend moderno, incluindo segurança, persistência de dados, documentação e testes.
Conta
Usuário
Transação
Segurança e logs (Em Desenvolvimento)
Emails
Otimização da DB (Em Desenvolvimento)
Gestão de tokens (Em Desenvolvimento)
Conteinerização (Em Desenvolvimento)
Documentação da API (Em desenvolvimento)
Testes (Em desenvolvimento)
Antes de começar, certifique-se de ter instalado:
git clone https://github.com/MatheusHBMelo/spring-bank-api
cd spring-bank-api
springbankdb.application.properties. spring.datasource.url=jdbc:postgresql://localhost:5432/springbankdb
spring.datasource.username=seu-usuario
spring.datasource.password=sua-senha
application.properties, conforme os dados do Mailtrap. spring.mail.host={host do provedor de email}
spring.mail.port={porta do provedor de email}
spring.mail.username={aqui seu username}
spring.mail.password={aqui sua senha de acesso}
application.properties. spring.app.security.secret=${JWT_SECRET}
spring.app.security.issuer=${JWT_ISSUER}
spring.app.email=${EMAIL_APP}
mvn clean install
mvn spring-boot:run
Adotei a convenção de commits semânticos para manter o histórico do repositório organizado e facilitar o entendimento das mudanças realizadas. Utilize o seguinte padrão para mensagens de commit:
<tipo>: <descrição breve>
feat: adiciona endpoint para criação de contasfix: corrige erro de autenticação no loginrefactor: melhora organização do serviço de transaçõeschore: atualiza versão do Spring Bootdocs: adiciona seção sobre commits semânticos no READMEtest: adiciona teste unitário para o serviço de usuáriosstyle: aplica formatação ao código do controllerPOST /auth/register: Criação de usuários (salva no banco de dados).POST /auth/login: Autenticação de usuários (retorna token JWT).POST /transaction/transfer: Fazer transação entre contas.POST /transaction/deposit: Fazer deposito em conta.POST /transaction/withdraw: Fazer saque em conta.GET /transaction/statement: Buscar extrato de transações.GET /admin/users: Retorna todos os usuários.GET /admin/user?username="": Retorna um usuário por username.PATCH /admin/user?username="": Desativa um usuário.GET /admin/transactions: Retorna todas as transações.GET /admin/accounts: Retorna todas as contas.GET /admin/account?numberAccount="": Retorna uma conta por número.Contribuições são bem-vindas! Siga os passos abaixo:
git checkout -b feature/nova-feature
git commit -m "feat: detalhe da nova funcionalidade"
git push origin feature/nova-feature
Este projeto está licenciado sob a Licença MIT.
Matheus Barbosa