The Patient Fitness Tracker is a modern healthcare platform designed to streamline patient management and monitoring across multiple hospitals. It empowers patients to take control of their health journey while enabling healthcare providers to deliver personalized care efficiently.
- User Authentication: Secure registration and login for patients and hospital staff.
- Dashboard: Personalized dashboards for patients, hospitals, and admins for efficient data management.
- Patient Management: Profile management, medical history, and seamless access to patient records across hospitals.
- Appointment Scheduling: Easy scheduling and management of appointments for patients and hospital staff.
- Notifications and Alerts: Real-time notifications for appointments, medication schedules, and health events.
-
Clone the repository:
git clone https://github.com/ad956/patient-fitness-tracker.git
-
Navigate to the project directory:
cd patient-fitness-tracker
-
Install dependencies:
npm install
-
Set up environment variables: Create a file named
.env.local
in the root directory of your project and add the following environment variables with their corresponding values:Variable Description NEXT_PUBLIC_BASE_URL Base URL of the application. MONGODB_URI MongoDB connection URI. SMTP_HOST Hostname of the SMTP server for sending emails. SMTP_PORT Port number of the SMTP server. SMTP_USER Username for SMTP authentication. SMTP_PASSWORD Password for SMTP authentication. SMTP_FROM_EMAIL Email address for sending emails. JWT_SECRET Secret key for JWT token generation and verification. BCRYPT_SALT_ROUNDS Number of salt rounds for bcrypt password hashing RAZORPAY_KEY_ID Your Razorpay Key ID RAZORPAY_KEY_SECRET Your Razorpay Key Secret IP_INFO_TOKEN IPInfo access token for retrieving IP details LOGGER_EMAIL Email to receive user activity(signin/signup) notifications NOVU_API_KEY Novu API key for sending notifications NEXT_PUBLIC_NOVU_APP_IDENTIFIER Novu app identifier for frontend NEXT_PUBLIC_CLOUDINARY_CLOUD_NAME Cloudinary cloud name for image uploads NEXT_PUBLIC_CLOUDINARY_API_KEY Cloudinary API key for image uploads CLOUDINARY_API_SECRET Cloudinary API secret for image uploads -
Start the development server:
npm run dev
This command will start the Next.js development server.
-
Testing with Playwright:
- Run tests using Playwright:
npm test
- Run tests using Playwright:
-
Linting:
- To lint your code using Next.js linting rules:
npm run lint
- To lint your code using Next.js linting rules:
-
Previewing Emails:
- Use the following command to preview emails:
npm run preview-email
- Use the following command to preview emails:
📝 License This project is licensed under the MIT License.