Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/keyyuwan/fit-pass-api
FitPass is a Gympass style app developed with SOLID principles
https://github.com/keyyuwan/fit-pass-api
docker fastify nodejs prisma solid
Last synced: about 2 months ago
JSON representation
FitPass is a Gympass style app developed with SOLID principles
- Host: GitHub
- URL: https://github.com/keyyuwan/fit-pass-api
- Owner: keyyuwan
- Created: 2023-04-20T02:11:42.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2024-08-16T12:49:01.000Z (4 months ago)
- Last Synced: 2024-08-16T23:29:45.015Z (4 months ago)
- Topics: docker, fastify, nodejs, prisma, solid
- Language: TypeScript
- Homepage:
- Size: 487 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# FitPass
GymPass style app
## đź› Requisitos funcionais
**Autenticação e Cadastro**
- [x] Deve ser possĂvel se cadastrar;
- [x] Deve ser possĂvel se autenticar;**Usuário**
- [x] Deve ser possĂvel obter o perfil de um usuário logado;
**Check-in**
- [x] Deve ser possĂvel obter o nĂşmero de check-ins realizados pelo usuário logado;
- [x] Deve ser possĂvel o usuário obter seu histĂłrico de check-ins;
- [x] Deve ser possĂvel o usuário realizar check-in em uma academia;
- [x] Deve ser possĂvel validar o check-in de um usuário;**Academia**
- [x] Deve ser possĂvel o usuário buscar por academias prĂłximas (atĂ© 10km);
- [x] Deve ser possĂvel o usuário buscar academias pelo nome;
- [x] Deve ser possĂvel cadastrar uma academia;## đź“„ Regras de negĂłcio
**Usuário**
- [x] O usuário não pode se cadastrar com e-mail duplicado;
**Check-in**
- [x] O usuário não pode realizar 2 check-ins no mesmo dia;
- [x] O usuário não pode realizar check-in se não estiver perto (100m) da academia;
- [x] O check-in só pode ser validado até 20 minutos após criado;
- [x] O check-in sĂł pode ser validado por administradores;**Academia**
- [x] A academia sĂł pode ser cadastrada por administradores;
## 👨‍💻 Requisitos não-funcionais
- [x] A senha do usuário precisa estar criptografada;
- [x] Os dados da aplicação precisam estar persistidos em um banco PostgreSQL;
- [x] Todas as listas de dados precisam estar paginadas com 20 itens por página;
- [x] O usuário deve ser indentificado por um JWT;## 🚀 Techs
âś… Node.js
âś… TypeScript
âś… Fastify
âś… Prisma
âś… Vitest
âś… Supertest
âś… Zod
âś… dayjs
âś… bcryptjs