tsbank_api
tsbank_api copied to clipboard
API RESTful com autenticação de usuário, criptografia de senha e integração a banco de dados. Levando à risca os princípios de desenvolvimento utilizados.
⛰️ TSBANK API
🔍 Sobre o Projeto
A API TSBank é uma aplicação RESTful que oferece suporte a operações CRUD simples, gerenciamento e controle de transações, geração de extratos, saques, depósitos e transações entre contas, além de ter a capacidade de atualizar todas as informações do usuário.
🛠️ Tecnologias e Ferramentas Utilizadas
🏗 Estrutura e Arquitetura
O projeto segue os princípios da arquitetura limpa e leva em consideração os princípios do SOLID. O código foi organizado de acordo com os princípios de modularidade, reutilização e responsabilidade única.
🔏 Autenticação
Para usar a API, é necessário autenticar-se. Você deve obter um token JWT válido através do endpoint de login antes de acessar outros recursos. O token JWT deve ser incluído no cabeçalho de autorização de todas as solicitações subsequentes.
📃 Documentação da Aplicação
A seguir, temos o link da documentação oficial da nossa aplicação no Swagger:
https://tsbank-api.onrender.com/
obs: Pode ocorrer atraso no carregamento, pois se o UptimeRobot falhar, e, posteriormente, o deploy não for acessado por um certo período, uma requisição subsequente solicitará ao Render que a aplicação saia do "Modo Sleep".
🐳 Docker
Com a adição do Docker, você agora pode utilizar dos scripts fornecidos em package.json para poder construir a imagem docker e rodar os containers da aplicação e dos testes.
Para isso, segue a lista de funções de cada script:
docker-build: Constrói a imagem docker do projeto
docker-start: Sobe e roda/só roda o container tsbank_api
docker-stop: Para o container tsbank_api
docker-test: Sobe um container alternativo chamado tsbank_api_tests, roda os testes e exclui o container após a execução dos mesmos
🖋️ Contribuindo para a TSBank API
Agradecemos pelo seu interesse em contribuir para a TSBank API. Sua ajuda é valiosa para melhorar e expandir nossa aplicação. Abaixo estão as diretrizes e os passos para contribuir com nosso projeto.
💻 Como Contribuir
🌳 Forkando o Repositório
Antes de começar, você deverá forkar o repositório do projeto para seu perfil.
🖨 Clonando seu Repositório
Após o Fork, você precisará clonar o repositório forkado para seu ambiente de desenvolvimento local:
git clone https://github.com/{seu-usuario}/tsbank_api.git
cd tsbank_api
⏬ Instalando Dependências
Certifique-se de ter Node.js instalado no seu sistema. Em seguida, instale as dependências necessárias:
npm install
ou
yarn install
ou
pnpm install
🆕 Criando uma Branch
Antes de iniciar qualquer trabalho, crie uma branch separada para a sua contribuição. Use um nome descritivo para a sua branch:
git checkout -b feature/nova-funcionalidade
🔨 Fazendo Alterações
Faça as alterações necessárias no código, adicione novos recursos ou correções de bugs.
🧪 Testando
Garanta que suas alterações não quebraram nenhum recurso existente. Execute os testes e certifique-se de que todos passam:
npm run test
ou
yarn test
ou
pnpm test
📝 Documentando
Mantenha a documentação atualizada. Se você adicionou novos recursos, verifique se eles estão devidamente documentados no Swagger.
📊 Compromissos e Push
Após concluir suas alterações e testá-las, faça um commit das alterações:
git add .
git commit -m feat(nomeDoArquivo): Nova funcionalidade
Em seguida, envie suas alterações para o repositório:
git push origin feature/nova-funcionalidade
📨 Solicitando um Pull Request (PR)
Vá para o repositório no GitHub e crie um Pull Request para que sua contribuição seja revisada. Certifique-se de descrever suas alterações e fornecer informações contextuais.
👁 Revisão e Fusão
Após criar um Pull Request, nossa equipe revisará suas alterações e fornecerá feedback. Uma vez aprovado, suas alterações serão mescladas no projeto principal.
💼 Diretrizes Gerais
- Mantenha o código limpo e legível.
- Siga as boas práticas de desenvolvimento.
- Respeite as convenções de nomenclatura existentes.
- Documente adequadamente as alterações, recursos ou correções.
Agradecemos pela sua contribuição e esperamos trabalhar juntos para tornar a TSBank ainda melhor. Se você tiver alguma dúvida ou precisar de ajuda, não hesite em entrar em contato conosco. Juntos, podemos criar uma aplicação mais robusta e eficiente.