O Personal Trainer Assistant é uma aplicação web desenvolvida para auxiliar o personal trainer no controle e acompanhamento dos treinos de seus alunos. A plataforma oferece funcionalidades como o envio de treinos diários via WhatsApp, consulta do histórico de treinos, sistema de login e cadastro com autorização e autenticação, também possui o chamado Role based acess control a fim de controlar rotas criticas a apenas pessoas que tem a autorização necessária para acessar a rota em específico, administração de treinos com histórico de progressão de carga e medidas do aluno, uma galeria de fotos para visualizar a evolução dos alunos, também possui um Perfil de cada aluno onde o mesmo pode realizar o cadastro com suas informações, e um perfil de Personal para o profissional conseguir se autopromover, um Personal consegue também adicionar um usuário como seu aluno.
- Java: Linguagem de programação principal.
- Spring Framework: Utilizado para desenvolvimento ágil e eficiente.
- Spring Security: Fornece recursos de segurança, incluindo controle de acesso e autenticação.
- Hibernate: Mapeamento objeto-relacional para interação com o banco de dados MySQL.
- MySQL: Banco de dados relacional para armazenamento persistente de dados.
- Bcrypt: Utilizado para criptografar senhas e garantir a segurança dos usuários.
- JWT (JSON Web Token): Para autenticação e autorização seguras em APIs REST.
- API Rest: Comunicação eficiente entre o frontend e o backend.
- Maven
- RabbitMQ