Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

ClinIQ — Clinic Management System

A clinic management system prototype built for Zambian clinical settings, designed as a lightweight complement to DHIS2 at the facility level. It was built as a final-year project for my BSc Computing program at Cavendish University Zambia.

Overview

ClinIQ helps front-line clinic staff track patients, visits, and medications in one place, with rule-based clinical decision support that automatically flags patients who need follow-up - missed appointments, frequent medication changes, chronic conditions with no recent visits, and patients with no visit history at all.

Features

  • Patient records - create, update, and browse patient profiles
  • Visit tracking - log clinic visits with diagnosis, clinician, and notes
  • Medication tracking - record prescriptions and status (active/changed/stopped)
  • Clinical decision support alerts - rule-based flags surfaced per patient and on a dedicated alerts view, e.g.:
    • Missed last scheduled appointment → follow-up required
    • Two or more medications stopped/changed → treatment plan review recommended
    • Chronic condition with no attended visits in 6 months → risk flag
    • No visit history → prompt initial consultation
  • REST API backing the frontend, with full CRUD on patients, visits, and medications

Tech Stack

  • Frontend: HTML, CSS, JavaScript (vanilla, no frameworks)
  • Backend: Node.js, Express
  • Database: MongoDB (via Mongoose)

Getting Started

Prerequisites

Setup

  1. Clone the repo and install dependencies:

    git clone https://github.com/YOUR_USERNAME/cliniq-system.git
    cd cliniq-system
    npm install
  2. Create a .env file in the project root:

    MONGODB_URI=mongodb://localhost:27017/cliniq
    PORT=3000
    NODE_ENV=development
    
  3. Start MongoDB locally (or point MONGODB_URI at an Atlas cluster).

  4. Start the server:

    npm start
  5. Seed demo data (first run only) by visiting:

    http://localhost:3000/api/seed
    
  6. Open index.html in your browser, or serve the frontend:

    npx http-server

Full setup details and troubleshooting are in SETUP.md; API reference is in API.md.

API

Full endpoint documentation lives in API.md. Summary:

Resource Endpoints
Patients GET/POST /api/patients, GET/PUT/DELETE /api/patients/:id
Visits GET/POST /api/visits, GET/PUT/DELETE /api/visits/:id, GET /api/patients/:id/visits
Medications GET/POST /api/medications, GET/PUT/DELETE /api/medications/:id, GET /api/patients/:id/medications

Project Status

Academic prototype developed as a final-year project. Scoped for simplicity and academic defensibility, using mock Zambian patient data - not intended for real clinical use without further security, privacy, and compliance work.

License

Academic project - for educational/portfolio purposes.

About

A clinic management system prototype built for Zambian clinical settings, designed as a lightweight complement to DHIS2 at the facility level. It has been built as a final-year project for my BSc Computing program at Cavendish University Zambia.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages