GymPass style app.
- Deve ser possível se cadastrar;
- Deve ser possível se autenticar;
- Deve ser possível obter o perfil de um usuário logago;
- Deve ser possível obter o numero de check-ins realizados pelo usuarios logado;
- Deve ser possível o usuario obter seu historico de check-ins;
- Deve ser possível o usuario buscar academias proxima (até 10km);
- Deve ser possível o usuario buscar academias pelo nome;
- Deve ser possível o usuario realizar check-in em uma academia
- Deve ser possivel validar o check-in de um usuario;
- Deve ser possivel cadastrar uma academia;
- O usuário nao pode se cadastrar com email duplicado;
- O usuário nao pode fazer 2 check-ins no mesmo dia;
- O usuário nao pode fazer o check-ins se nao estiver perto 100m da academia
- O check-in só pode ser validade até 20 mintuos após criado;
- O check-in só pode ser validade pelo administradores;
- A academia so pode ser cadatrada por administradores
- A senha do usuario precisa estar criptografadas;
- Os dados da aplicações precisam estar persistidos em um banco PostgreSQL
- Todas listas de dados preisam estar paginadas com 20 itens por pagina
- O usuario deve ser identificado por um JWT (JSON Web Token)