Coder Social home page Coder Social logo

1brahimmohamed / healu Goto Github PK

View Code? Open in Web Editor NEW

This project forked from zeyad-amr/healu

0.0 0.0 0.0 22.14 MB

Polyclinic Management System for SBE4029 Healthcare Information Systems Course

License: Apache License 2.0

JavaScript 15.73% Python 2.90% TypeScript 65.98% CSS 14.90% HTML 0.40% Dockerfile 0.09%
django express healthcare information-systems microservices polyclinic react typescript

healu's Introduction

HealU - POLYCLINIC MANAGEMENT SYSTEM

Table of Contents

Introduction

HealU is a Polyclinic Management System that is developed to help the polyclinic to manage their daily operations. This system is developed using microservices architecture. This system is developed as a part of the Healthcare Information System course (SBE40XX) at the Department of Systems & Biomedical Engineering, Cairo University.

Overview

The system consists of:

  • Home Page
  • 6 clinics (Medical Staff Portals)
  • API Gateway
  • Patient Portal
  • Admin Portal
  • Tons of backend services

Clinics

Features (Bear with me, it's a long list ;) )

  • Patient Portal
    • Patient Login
    • Patient Registration
      • Enter Personal Information
      • Enter Medical Information
      • Upload Medical Records
    • Manage Appointments
      • View Appointments
      • Cancel Appointments
      • Book Appointments
      • View Appointment Details
    • Patient Profile
    • Patient Medical Records
  • Admin Portal
    • Admin Login
    • Admin Dashboard & Analytics
      • View Statistics and Data for the whole system components
    • Clinic Management
      • (Add, Edit, Remove) Clinic
      • (Add, Edit, Remove) Clinic Services
      • (Add, Edit, Remove) Clinic Medical Staff
    • Patient Management
  • Medical Staff Portals (One for each Clinic)
    • Medical Staff Dashboard for Appointments & Patients
      • Manage Appointments
      • Manage Patients
      • (Add, Remove, Edit) Appointment Slots
    • Medical Staff Dashboard for Prescriptions & Medical Records
      • (View, Add) Patient Medical Records
      • (View, Add) Patient Prescriptions
      • (View,Request, Add) Lab Tests
    • Specialized Workflow features for each clinic
  • API Gateway
    • Authentication
    • Authorization
    • Load Balancing
    • Routing
    • Caching
    • Rate Limiting
    • Logging
    • Monitoring
  • Billing System
    • Offline Payment
    • Online Payment (PayPal)
    • Generate Bills & Invoices
    • View Bills & Invoices
    • Pay Bills
  • Document Management System
    • Upload Medical Documents
      • DICOM Images
      • JPEG/PNG Images
      • PDF Files
      • Word Documents
      • Excel Sheets
    • (View, Edit) Documents
    • Download Documents
  • Electronic Medical Records System
    • (View, Add) Patient Medical Records
    • (View, Add) Patient Prescriptions
    • (View,Request, Add) Lab Tests
    • (View, Add) Patient Medical Documents
  • Appointment Management System
    • (View, Add, Cancel) Appointments
    • (View, Add, Cancel) Appointment Slots
    • (View, Add, Cancel) Appointment Requests
    • (View, Add, Cancel) Appointment Cancellations

System Architecture

The system is developed using microservices architecture. The system consists of 6 clinics, each clinic has its own portal for the medical staff to manage the clinic's operations. There might be a backend service for the clinic or not, depending on the clinic's operations. The interactions between the clinics and the other system components are done via REST APIs. the connection between the clinics & services and the other system components is done via the API Gateway. The API Gateway is responsible for authentication, authorization, load balancing, routing, caching, rate limiting, logging, and monitoring.

System Architecture

Database schemas

Services

  • Appointments Service

    Appointments Service

  • Electronic Medical Records Service

    Electronic Medical Records Service

  • Registration Service

    Registration Service

  • Billing Service

    Billing Service

  • Document Management Service

    Document Management Service

  • Admin Service

    Admin Service

Technologies

Frontend

The Whole frontend is a single project where all the team members worked on. Following MVC architecture.

cpp cpp cpp cpp

Backend

The backend is developed using microservices architecture. Each service is a separate project.

cpp cpp cpp cpp cpp

Databases

Multiple databases are used in the system. Each service has its own database, according to its needs.

cpp cpp cpp

How to Run the Project

Most Services and Databases are hosted on render.com. Most of them may be down due to the limited free tier.

Live Service URLs

cpp

You can run the project locally by following these steps:

  1. Clone the project
  2. Install the dependencies for each service
    • for nodejs services:
      cd ./service-name
      npm install
    • for python services:
      cd ./service-name
      pip install -r requirements.txt
  3. Run the services
    • for nodejs services:
      cd ./service-name
      npm run dev OR npm start
    • for python services:
      cd ./service-name
      python manage.py runserver
  4. Run the frontend
  • do the following:
    cd ./client
    npm install
    npm start

5.Enjoy!

Screenshots

Home Page

Home Page

Appointments

Patient Portal

Clinic Portal

Clinic Portal Clinic Portal

Analytics

Analytics

Documentations

All the Services APIs is documented on Postman

cpp

Contributors

Around 40 Senior Students from the Department of Systems & Biomedical Engineering, Cairo University contributed to this project. They were divided into 7 teams, each team was responsible for a clinic and a service. and 1 core team that was responsible for the Patient Portal and API Gateway. Each team had a team lead, these leads with the core team formed the project management team. which was responsible for Admin Service, Analytics, and Billing System & more

Core Team
Zeyad Amr Fekry
Zeyad Amr Fekry

(Team Lead)
Full Stack
Ahmed Abd ElRaouf
Ahmed Abd ElRaouf

Full Stack
Abdelrahman Yasser
Abdelrahman Yasser

Frontend
Mo'men Mohamed
Mo'men Mohamed

Frontend
Mazen Tarek
Mazen Tarek

PM & Backend
MDIMA ( Nutrition Clinic )
Ibrahim Mohamed
Ibrahim Mohamed

(Team Lead)
Full Stack
Maha Medhat
Maha Medhat

Backend
Doha Eid
Doha Eid

Backend
Maye Khaled
Maye Khaled

Frontend
Maye Khaled
Amira Mohamed

Frontend
MADS ( Dental Clinic )
Mohamed Ismail
Mohamed Ismail

(Team Lead)
Full-Stack
Dina Mostafa
Dina Mostafa

Backend
Sherif Ahmed
Sherif Ahmed

Backend
Ahmed El Sarta
Ahmed El Sarta

Frontend
Adham Mohammed
Adham Mohammed

Frontend
Mina Azeer
Mina Azeer

Backend
iHIS ( Ophthalmology Clinic )
Hanya Ahmed
Hanya Ahmed

(Team Lead)
Full-Stack
Mariam Mounier
Mariam Mounier

Frontend
Aya Amr
Aya Amr

Backend
Mohamed Salman
Mohamed Salman

Backend
Nourhan Sayed
Nourhan Sayed

Frontend
medmates ( Orthopedic Clinic )
Maryam Megahed
Maryam Megahed

(Team Lead)
Backend
Sara Amgad
Sara Amgad

Backend
Rawda Yousry
Rawda Yousry

Frontend
Rawan Abd-Elrahman
Rawan Abd-Elrahman

Frontend
Sama Mostafa
Sama Mostafa

Full Stack
care lifters ( Pediatric Clinic )
Abram Gad Hanna
Abram Gad Hanna

(Team Lead)
Frontend
Kareman Yasser Mohamed
Kareman Yasser Mohamed

Backend
Mayar Fayez Sadek
Mayar Fayez Sadek

Frontend
Nada Ahmed Mohamed
Nada Ahmed Mohamed

Backend
Naira Youssef Abdelazim
Naira Youssef Abdelazim

Frontend
Yasmin Yasser Ali
Yasmin Yasser Ali

Database

Submitted to:

Dr. Ahmed Morsy, Dr Eman Ayman & Eng Yara Wael

All rights reserved © 2024 to Systems & Biomedical Engineering, Cairo University (Class 2024)

healu's People

Contributors

1brahimmohamed avatar abdelrhman012 avatar abram1111 avatar adham-mohammed avatar ahmed-elsarta avatar ahmedraouf481 avatar ameeramohammed avatar basmaalaaeid avatar dina153 avatar doha-eid avatar hanya-ahmad avatar mahamedhat avatar mariammounier avatar maryammegahed avatar mayekhaled0 avatar mohamedaismail avatar momen882001 avatar nada-21 avatar naira06 avatar nourhan-sayed avatar rawanrashad01 avatar rawda-yousry avatar salmoon8 avatar samamostafa1 avatar saramgad avatar sherif-2001 avatar zeyad-amr avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.