Feature List for PT Connect - nenitaE/PTConnect GitHub Wiki

MVP LIST ______________________

PT Connect is a website for physical therapists to interact with their patients.

It allows licensed clinicians to:

  • create and send personalized exercise prescriptions (HEP) to their patients
  • communicate with their patients via a secure online portal
  • provide virtual sessions

It allows patients to:

  • view their exercise prescription and click links with video demonstrations of proper technique
  • send direct messages to their clinicians
  • (BONUS)log their exercise sessions so their clinician can view compliance
  • (BONUS)schedule a virtual session with their clinician if they are struggling with something or having problems with their exercises.

New account creation, log in, log out, and guest/demo login

  • Users can sign up, log in, and log out.
  • Users can use a demo log in to try the site.
  • Users can't use any features without logging in.
  • When a user logs in they should be directed to a dashboard which will be different based on whether the user is a clinician or a patient.
    • the navigation bar should not show sign-up or log-in
    • the navigation bar should show logout
  • When a user logs out they should be directed to the homepage.
    • the navigation bar should not show logout
    • the navigation bar should show sign-up or log-in

-------------------------------

Features:

1. Create a patient list (connections):

Methods: GET, POST, PUT, DELETE

  • GET: Only logged in clinician-users can get current patient list with details
  • POST: Logged in clinician-users can add a patient-user to their patient list (creates a status: active entry on the list). Logged in patient-users can request to add themselves to their clinician's patient list (creates a status: pending entry on the list). (Query the patient list to see if the patient exists and has status: active (has already been added by the clinician). If not, patient is added with status: pending and dm is sent to the clinician requesting that the patient be verified (set to active).
  • PUT: Logged in clinician-users can change patient status from pending to active.
  • DELETE: Logged in clinician-users are allowed to remove a patient from their patient list (equivalent to un-following). By "un-following" the patient, the clinician is removing patient access to the clinician via dm or to their virtual visit schedule, but the patient will still be able to view their HEPs (both current and expired). This is necessary because once a patient has been discharged from therapy, the clinician-patient relationship is over and the clinician can no longer (legally) advise them.

2. Create an HEP (home exercise program/prescription):

Methods: GET, POST, DELETE, PUT

  • GET: Logged in patient-users can fetch their HEP that has been prescribed by their clinician
  • POST: Logged in clinician-users can CREATE a new HEP which will include:
    1. A list of the exercises prescribed for the specific patient/muscle group as well as number of sets, reps and hold time of exercise
    2. Daily frequency (how many times per day) to perform the HEP
    3. Weekly frequency (how many times per week) to perform the HEP
    4. Status of the HEP (whether it is active or expired)
    5. Notes or special instructions from their clinician (For example: after searching for shoulder exercises, they would choose several exercises and add them to an HEP. Each exercise would have a name: bicep curls, number of reps: 15 reps, daily frequency: 2 times per day, weekly frequency: 5 days a week, status: active, and notes: if you experience pain, only bend elbow halfway.)
  • PUT: Logged in clinician-users can EDIT a previously created HEP by removing some of the exercises on it, editing the number of reps, the duration, or the frequency of the exercise. (for example... bicep curls, 15 reps, 3 times per day)
  • DELETE: Logged in clinician-users can delete an HEP

3. Exercises

Methods: GET, POST, PUT, DELETE

  • GET: Logged in clinician-users can search the db GET the exercises they want to prescribe to their patient based on the injured muscle group/diagnosis. (for example, they can select "shoulder exercises" and it will return a list of shoulder exercises with a description of how to perform the exercise and a video link to a demo)
  • POST: Logged in clinician-users can POST the number of reps and sets for each exercise
  • PUT: Logged in clinician-users can EDIT the number of reps and sets for each exercise
  • DELETE: Logged in clinician-users can DELETE an entry in the exercises table

4. Direct message your clinician/patient:

Methods: GET, POST, DELETE

  • GET: Logged in patient-users and clinician-users can fetch messages shared between one another.
  • POST: Logged in patient-users and clinician-users can create a new message and send to one another.
  • DELETE: Logged in patient-users and clinician-users can delete a message

--------------------------------

Bonus if time permits:

5. Book a virtual visit with your clinician:

Methods: GET, POST, DELETE, PUT

  • GET: Logged in patient-users can GET a list of preset virtual visit time slots.
  • POST: Logged in patient-users can CREATE a booking for one of the virtual visits.
  • PUT: Logged in patient-users can EDIT the date of a booked virtual visit.
  • DELETE: Logged in patient-users can DELETE (cancel) a booked virtual visit.

6. Track Your Progress:

Methods: GET, POST, DELETE *GET: Logged in patients will be able to GET a list of their completed HEP sessions *POST: Logged in patients will be able to mark a completed HEP session *DELETE: Logged in patients will be able to remove a session marked "completed".