..

Project Notes

Login and Auth

  1. As a user, I should be able to login using my university email id.
  2. As a user, I should be able to change my password.
  3. As a user, I should be able to set a new password incase I forget it.

Class Management

  1. As a user, I should be able to book a class 2. As a user, I should be able to book a class for a particular time and day 3. As a user, I should be able to book a class recurringly 4. As a user, I should be able to request for an already booked class 5. As a user, I should be able to book classes with priority 6. As a user, I should be able to swap classes with another user
  2. As a user, I should be able to modify a class 8. As a user, I should be able to reschedule a class I have booked 9. As a user, I should be able to cancel a class I previously booked for 10. As a user, I should be able to move my class to a different classroom
  3. As a user, I should receive notifications regarding classes
  4. As a user, I should receive a notification if someone else requests a class I booked for
  5. As a user, I should receive a notification if a requested class is now free
  6. As a user, I should receive a notification if my class has been updated(cancel/moved/rescheduled)

Visualization

  1. As a user, I should be able to see all the classes available at a certain time
  2. As a user, I should be able to see all the times available for a particular class
  3. As a user, I should be able to see all the class I have booked and my updated schedule

Housekeeping

  1. As an admin, I should be able to create a class timetable 2. As an admin, I should be able to import a =.xlsx= file
  2. As an admin, I should be able to manipulate a class timetable 4. As an admin, I should be able to update a class timetable 5. As an admin, I should be able to delete a class timetable

STACK

Backed

  • Go
  • Microservice
  • API GraphQL or REST

Frontend

  • React