This repository contains the high-level design for an Exercise Health Platform. The platform aims to facilitate the creation, sharing, and tracking of exercise programs between healthcare providers and patients.
- Provider: Can create, modify, and assign exercise programs to patients.
- Patient: Can view and perform exercises prescribed in the program.
- Exercise Library: A repository of exercises that providers can choose from to create exercise programs.
- Program Creation: Providers can create personalized exercise programs for patients.
- Program Sharing: Providers can share exercise programs with their patients.
- Progress Tracking: Patients can track and update their progress within the platform.
- Notifications: Automated reminders for patients to perform exercises and notifications for providers about patient progress.
- Provider Data: Stores professional information of healthcare providers.
- Patient Data: Contains personal information and exercise progress of patients.
- Exercise Data: Includes details about each exercise available in the platform's library.
- Program Data: Stores information about exercise programs, including a list of exercises, instructions, and assigned patients.
Explanation:
- Provider and Program: Each provider can assign multiple programs, but each program is assigned by only one provider.
- Patient and Program: A patient can be assigned multiple programs, but each program is assigned to one patient.
- Program and Exercise: A program can contain multiple exercises, and each exercise can be part of multiple programs.
- Patient and Exercise: Patients perform multiple exercises, and each exercise can be performed by multiple patients. (double join)
To run this application:
-
Ensure you have Node.js and TypeScript installed on your system.
-
Install necessary dependencies using npm or yarn:
npm install express @types/express
or
yarn add express @types/express
-
Compile TypeScript code to JavaScript:
tsc index.ts
-
Run the compiled JavaScript file:
node index.js
-
Access the server at
http://localhost:3000/
in your web browser or API testing tool.