Developed a comprehensive Hospital Management System designed to streamline administrative, clinical, and patient management workflows. The platform serves healthcare administrators, doctors, and patients by enabling efficient scheduling, billing, and real-time health data tracking. This system significantly improved operational efficiency and enhanced patient care by integrating modular components for various healthcare operations.
- Create a .env file with the following configuration:
NODE_ENV=<development>/<test>
PORT=3000
DATABASE_STRING=<DATABASE_CONN_STRING>
JWT_SECRET=<JWT Token>
SUPABASE_S3_BUCKET=<SUPABASE_S3_BUCKET>
- Run the front-end and backend.
- Backend: Node.js, Express.js, PostgreSQL for robust server-side application logic and a relational database ensuring data integrity and scalability.
- Frontend: React.js for a dynamic, responsive user interface, leveraging React Bootstrap for consistent UI design.
- Security: Helmet.js and xss-clean for securing HTTP headers and sanitizing input, ensuring data protection.
- Others: Sequelize ORM for database management, Winston for logging, and Morgan for HTTP request monitoring.
Directory structure:
βββ hs094-hospital-management-system/
βββ backend/
β βββ app.js
β βββ package.json
β βββ server.js
β βββ yarn.lock
β βββ .DS_Store
β βββ .gitignore
β βββ config/
β β βββ config.js
β β βββ logger.js
β β βββ morgan.js
β β βββ pg_details.js
β βββ controllers/
β β βββ admin.controller.js
β β βββ appointment.controller.js
β β βββ auth.controller.js
β β βββ block.controller.js
β β βββ doctor.controller.js
β β βββ dose.controller.js
β β βββ invoice.controller.js
β β βββ medication.controller.js
β β βββ operator.controller.js
β β βββ patient.controller.js
β β βββ procedure.controller.js
β β βββ room.controller.js
β β βββ slot.controller.js
β β βββ stay.controller.js
β β βββ test.controller.js
β β βββ treatment.controller.js
β βββ middleware/
β β βββ auth.js
β β βββ error.js
β β βββ multer.js
β βββ models/
β β βββ admin.js
β β βββ appointment.js
β β βββ block.js
β β βββ doctor.js
β β βββ dose.js
β β βββ index.js
β β βββ medication.js
β β βββ operator.js
β β βββ patient.js
β β βββ procedure.js
β β βββ room.js
β β βββ slot.js
β β βββ stay.js
β β βββ test.js
β β βββ treatment.js
β βββ routes/
β β βββ admin.route.js
β β βββ appointment.route.js
β β βββ auth.route.js
β β βββ block.route.js
β β βββ doctor.route.js
β β βββ dose.route.js
β β βββ index.js
β β βββ invoice.route.js
β β βββ medication.route.js
β β βββ operator.route.js
β β βββ patient.route.js
β β βββ procedure.route.js
β β βββ room.route.js
β β βββ slot.route.js
β β βββ stay.route.js
β β βββ test.route.js
β β βββ treatment.route.js
β βββ scripts/
β β βββ generateRoom.js
β βββ uploads/
β βββ utils/
β βββ ApiError.js
β βββ catchAsync.js
β βββ utility.js
βββ frontend/
βββ package-lock.json
βββ package.json
βββ yarn.lock
βββ .gitignore
βββ public/
β βββ browserconfig.xml
β βββ index.html
β βββ manifest.json
β βββ robots.txt
β βββ site.webmanifest
βββ src/
βββ constants.js
βββ index.js
βββ routes.js
βββ assets/
β βββ img/
β β βββ OFL.txt
β β βββ Oswald-VariableFont_wght.ttf
β β βββ README.txt
β β βββ brand/
β β βββ favicon/
β β β βββ browserconfig.xml
β β β βββ manifest.json
β β β βββ site.webmanifest
β β βββ flags/
β β βββ hosp/
β β βββ icons/
β β βββ illustrations/
β β βββ pages/
β β βββ static/
β β β βββ Oswald-Bold.ttf
β β β βββ Oswald-ExtraLight.ttf
β β β βββ Oswald-Light.ttf
β β β βββ Oswald-Medium.ttf
β β β βββ Oswald-Regular.ttf
β β β βββ Oswald-SemiBold.ttf
β β βββ team/
β β βββ technologies/
β βββ syntax-themes/
β βββ ghcolors.json
β βββ xonokai.json
βββ components/
β βββ AccordionComponent.js
β βββ AddBlock.js
β βββ AddMedication.js
β βββ AddProcedure.js
β βββ AddRoom.js
β βββ Charts.js
β βββ Code.js
β βββ CodeEditor.js
β βββ DocMedication.js
β βββ DocTreatment.js
β βββ Doc_add_slot.js
β βββ Documentation.js
β βββ Footer.js
β βββ Navbar.js
β βββ Op_add_docslot.js
β βββ PDose.js
β βββ PQuery.js
β βββ PStay.js
β βββ PTest.js
β βββ PTreatment.js
β βββ Patient_signup.js
β βββ Preloader.js
β βββ Progress.js
β βββ ScrollToTop.js
β βββ Sidebar.js
β βββ Sidebar_admin.js
β βββ Sidebar_doc.js
β βββ Sidebar_patient_data.js
β βββ Tables.js
β βββ Widgets.js
β βββ admit_form.js
β βββ doctor_appointment_query.js
β βββ doctor_signup.js
β βββ foot.js
β βββ invoicePdf.js
β βββ operator_signup.js
β βββ patient_data.js
β βββ set_appointment.js
β βββ styles.css
β βββ top_nav.js
βββ data/
β βββ charts.js
β βββ commands.js
β βββ features.js
β βββ notifications.js
β βββ pages.js
β βββ tables.js
β βββ teamMembers.js
β βββ transactions.js
βββ pages/
β βββ AdmPatients.js
β βββ Admin_Doc_add.js
β βββ Admin_Op_add.js
β βββ Admin_del.js
β βββ Doc_Patient_List.js
β βββ Doc_Patient_Query.js
β βββ Doc_Slot.js
β βββ Doc_Slot_Add.js
β βββ Doctors.js
β βββ FDAdmit.js
β βββ FDAppoint.js
β βββ HomePage.js
β βββ Presentation.js
β βββ Procedures.js
β βββ Settings.js
β βββ Transactions.js
β βββ Upgrade.js
β βββ ViewTests.js
β βββ invoiceHandler.js
β βββ medicines.js
β βββ operators.js
β βββ patients.js
β βββ room_block.js
β βββ components/
β β βββ Accordion.js
β β βββ Alerts.js
β β βββ Badges.js
β β βββ Breadcrumbs.js
β β βββ Buttons.js
β β βββ Forms.js
β β βββ Modals.js
β β βββ Navbars.js
β β βββ Navs.js
β β βββ Pagination.js
β β βββ Popovers.js
β β βββ Progress.js
β β βββ Tables.js
β β βββ Tabs.js
β β βββ Toasts.js
β β βββ Tooltips.js
β β βββ footer.js
β β βββ header.js
β β βββ userCards.js
β βββ dashboard/
β β βββ DashboardOverview.js
β βββ documentation/
β β βββ AboutUs.js
β β βββ ContactUs.js
β β βββ DocsChangelog.js
β β βββ DocsFolderStructure.js
β β βββ Doctorlist.js
β β βββ Doctors.js
β β βββ History.js
β β βββ Vision.js
β β βββ styles.css
β βββ examples/
β β βββ AboutUs.js
β β βββ ForgotPassword.js
β β βββ Lock.js
β β βββ NotFound.js
β β βββ ResetPassword.js
β β βββ ServerError.js
β β βββ Signin.js
β β βββ Signup.js
β βββ tables/
β βββ BootstrapTables.js
βββ scss/
β βββ volt.scss
β βββ volt/
β βββ _components.scss
β βββ _functions.scss
β βββ _layout.scss
β βββ _mixins.scss
β βββ _reboot.scss
β βββ _utilities.scss
β βββ _variables.scss
β βββ _vendor.scss
β βββ components/
β β βββ _accordions.scss
β β βββ _alerts.scss
β β βββ _avatars.scss
β β βββ _badge.scss
β β βββ _blog-cards.scss
β β βββ _breadcrumb.scss
β β βββ _buttons.scss
β β βββ _card.scss
β β βββ _carousel.scss
β β βββ _charts.scss
β β βββ _close.scss
β β βββ _counters.scss
β β βββ _custom-forms.scss
β β βββ _datepicker.scss
β β βββ _dropdown.scss
β β βββ _dropzone.scss
β β βββ _forms.scss
β β βββ _icon-box.scss
β β βββ _images.scss
β β βββ _input-group.scss
β β βββ _list-group.scss
β β βββ _modal.scss
β β βββ _nav.scss
β β βββ _pagination.scss
β β βββ _popover.scss
β β βββ _preloader.scss
β β βββ _pricing-cards.scss
β β βββ _progress.scss
β β βββ _scrollbar.scss
β β βββ _shapes.scss
β β βββ _tables.scss
β β βββ _timelines.scss
β β βββ _tooltip.scss
β β βββ _type.scss
β βββ layout/
β β βββ _footer.scss
β β βββ _navbar.scss
β β βββ _section.scss
β β βββ _sidebar.scss
β β βββ _sidenav.scss
β βββ mixins/
β β βββ _animations.scss
β β βββ _background-variant.scss
β β βββ _icon.scss
β β βββ _modals.scss
β β βββ _popover.scss
β β βββ _transform.scss
β β βββ _utilities.scss
β βββ themes/
β β βββ _variables-dark.scss
β β βββ _variables-light.scss
β β βββ _variables-sunset.scss
β βββ utilities/
β β βββ _animations.scss
β β βββ _backgrounds.scss
β β βββ _helper.scss
β β βββ _position.scss
β β βββ _shadows.scss
β β βββ _sizing.scss
β β βββ _text.scss
β β βββ _transform.scss
β βββ vendor/
β βββ _datepicker.scss
β βββ _headroom.scss
β βββ _prism.scss
β βββ chartist/
β β βββ _chartist.scss
β β βββ settings/
β β βββ _chartist-settings.scss
β βββ wizard/
β βββ _form.scss
β βββ _mixins.scss
β βββ _variables.scss
βββ utils/
βββ augmentedAxios.js
- Architected the entire backend system, focusing on modular and maintainable API design.
- Led the development of RESTful APIs for core functionalities such as appointment scheduling, medication management, and billing.
- Collaborated with my teammates to design an intuitive user interface that adheres to modern UX principles.
- Implemented middleware for error handling, authentication, and authorization using JWT.
- Optimized database queries and schema design to handle high volumes of patient and clinical data efficiently.
- Challenge: Integrating real-time scheduling to manage overlapping doctor appointments and resource allocation efficiently.
- Solution: Designed a conflict-free slot allocation system using Sequelize's transaction management and implemented real-time updates with WebSocket communication.
- Reduced appointment scheduling time by 40% with the introduction of the real-time scheduling system.
- Achieved 98% system uptime with robust error handling and logging mechanisms.
- Successfully onboarded over 100 healthcare professionals and streamlined operations for a medium-sized hospital within six months of deployment. -->