Skip to content

dantelyro/api-solid

Repository files navigation

Solid principals apps course

GymPass style app.

RFs (Functional Requirements)

  • It must be possible to register.
  • It must be possible to authenticate.
  • It must be possible to obtain the profile of a logged-in user.
  • It must be possible to obtain the number of check-ins performed by the logged-in user.
  • It must be possible for the user to retrieve their check-in history.
  • It must be possible for the user to search for nearby gyms (up to 10km).
  • It must be possible for the user to search for gyms by name.
  • It must be possible for the user to check-in at a gym.
  • It must be possible to validate a user's check-in.
  • It must be possible to register a gym.

RNs (Business Rules)

  • Users should not be able to register with a duplicate email.
  • Users cannot make 2 check-ins on the same day.
  • Users cannot check-in if they are not close (within 100m) to the gym.
  • Check-in can only be validated within 20 minutes after creation.
  • Check-in can only be validated by administrators.
  • Gyms can only be registered by administrators.

RNFs (Non-functional Requirements)

  • The user's password needs to be encrypted.
  • Application data must be persisted in a PostgreSQL database.
  • All data lists must be paginated with 20 items per page.
  • The user must be identified by a JSON Web Token (JWT).

Requirements

install Docker

install Node >= v18.19.0

To Run

npm i
npm run docker:up
npm run start:dev

About

Rocketseat Aula de construção de uma seguindo os principios SOLID

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors