Shehab1110 / Healthify

Back-end server designed to help medical professionals and patients' medical life, including appointments, EMRs, and medicine reminders, symptoms diagnosis. It provides a secure, centralized platform for patients and healthcare providers to collaborate and share information, improving the quality of care provided.

Home Page:https://healthify-103r.onrender.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Healthify

Node.js badge Express badge MongoDB badge

Healthify is a Back-end server designed to help medical professionals and patients' medical life, including appointments, EMRs, and medicine reminders, symptoms diagnosis. It provides a secure, centralized platform for patients and healthcare providers to collaborate and share information, improving the quality of care provided.

🚀 Getting Started

To run this project locally, you need to have Node.js and MongoDB installed on your machine.

Prerequisites

  • Node.js
  • MongoDB
  • NPM or Yarn

Installation

  1. Clone this repo to your local machine using git clone https://github.com/<your-username>/healthify.git.
  2. Go to the project directory using cd Healthify.
  3. Install the dependencies using npm install or yarn install.
  4. Create a .env file in the root folder and add the following environment variables:

NODE_ENV=development PORT=3000 DATABASE=<your-mongodb-connection-string> DATABASE_PASSWORD=<your-mongodb-password> JWT_SECRET=<your-jwt-secret> JWT_EXPIRES_IN=90d JWT_COOKIE_EXPIRES_IN=90 EMAIL_USERNAME=<your-email-username> EMAIL_PASSWORD=<your-email-password> EMAIL_HOST=<your-email-host> EMAIL_PORT=<your-email-port> EMAIL_FROM=<your-email-address> STRIPE_SECRET_KEY=<your-stripe-secret-key>

Run the app using npm start or yarn start.
Open your browser and go to http://localhost:3000.

✨ Features

User registration and login with JWT authentication
Password reset with email verification
User profile update and deletion
User roles and permissions
Searching for nearest doctors by specialty and/or name
Scheduling appointments and cancelling appointments
Online payment using stripe
Accessing patient EMR
Create, Read, Update operations on patient's EMR by doctor with right permissions
Ratings and reviews of a doctor with validations in place
Calculating BMI
CRUD operations on Medicine Reminders for patient
Communication between patient and doctor
Error handling and logging

🛠️ Technologies

Node.js
Express
MongoDB
Mongoose
Stripe
Sendgrid
Helmet
Morgan
Bcrypt
Validator
JWT
Multer
express-rate-limit
express-mongo-sanitize
xss-clean

🚧 Project Status

This project is actively being developed and maintained, continuously adding new features and improving existing functionality. As such, there is always work to be done.

About

Back-end server designed to help medical professionals and patients' medical life, including appointments, EMRs, and medicine reminders, symptoms diagnosis. It provides a secure, centralized platform for patients and healthcare providers to collaborate and share information, improving the quality of care provided.

https://healthify-103r.onrender.com


Languages

Language:JavaScript 98.0%Language:HTML 2.0%