Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/dan-santos/gympass-beta-app
3o. Projeto da trilha Ignite de Node.Js, focado em SOLID
https://github.com/dan-santos/gympass-beta-app
fastify prisma solid typescript
Last synced: about 1 month ago
JSON representation
3o. Projeto da trilha Ignite de Node.Js, focado em SOLID
- Host: GitHub
- URL: https://github.com/dan-santos/gympass-beta-app
- Owner: dan-santos
- Created: 2023-10-05T17:07:06.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2023-10-09T15:24:21.000Z (about 1 year ago)
- Last Synced: 2023-10-10T06:20:04.867Z (about 1 year ago)
- Topics: fastify, prisma, solid, typescript
- Language: TypeScript
- Homepage:
- Size: 150 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
[![Vitest unit-tests](https://github.com/dan-santos/gympass-beta-app/actions/workflows/run-unit-tests.yml/badge.svg)](https://github.com/dan-santos/gympass-beta-app/actions/workflows/run-unit-tests.yml)
[![Run e2e Tests](https://github.com/dan-santos/gympass-beta-app/actions/workflows/run-e2e-tests.yml/badge.svg)](https://github.com/dan-santos/gympass-beta-app/actions/workflows/run-e2e-tests.yml)
# 3o. projeto da trilha Ignite de Node.Js
Web App de academia "Gympass Beta" com foco em SOLID
---
## StackBackend:
- TypeScript
- Fastify
- tsx
- zod
- vitest
- tsupDados:
- Postgres 15
- PrismaInfra
- Docker## RF
- [x] Deve ser possível se cadastrar;
- [x] Deve ser possível se autenticar;
- [x] Deve ser possível obter o perfil de um usuário logado;
- [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 buscar academias próximas;
- [x] Deve ser possível o usuaŕio buscar academias pelo nome;
- [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;
- [x] Deve ser possível cadastrar uma academia;## RN
- [x] O usuário não deve poder se cadastrar com um email duplicado;
- [x] O usuário não pode fazer 2 check-ins no mesmo dia;
- [x] O usuário não pode fazer 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;
- [x] A academia só poder ser cadastrada por administradores;## RNF
- [x] A senha do usuário precisa estar criptografada
- [x] Os dados da aplicação precisam estar persistidos no PostgreSQL;
- [x] Todas listas de dados precisam estar paginadas com 20 itens por página;
- [x] O usuário deve ser identificado por um JWT;