Skip to content

Giovani-O/gym-checkin-node.js

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Node.js API with SOLID principles

API for a gym chek-in app.

Functional Requirements

  • Should be able to sign up;
  • Should be able to sign in;
  • Should be able to fetch the profile of a authenticated user;
  • Should be able to fetch the number of check-ins of a user;
  • Should be able to obtain the check-in history of the user;
  • Should be possible to search gyms nearby;
  • Should be possible to search gyms by name;
  • Should be possible to check-in in a gym;
  • Should be possible to validate a user's check-in;
  • Should be possible to add a gym;

Business rules

  • The user shouldn't be able to sign up with a duplicated e-mail;
  • The user cannot check-in twice in the same day;
  • The user cannot check-in if they aren't near (100m) a gym;
  • Check-in can be validated up to 20 minutes after being created;
  • Check-in can only be validated by admins;
  • Gyms can only be added by admins;

Non-functional requirements

  • User password must be encrypted;
  • All the data must be persisted in a PostgresSQL database;
  • All data lists must be paginated with 20 items per page;
  • User mus be identified by a JWT.

About

Node.js API using SOLID principles

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published