Skip to content

Latest commit

 

History

150 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MediQ - Digital Token Management System 🏥📱

MediQ A Digital Token Management System for Medical Centres

MediQ is a mobile application designed to modernize queue management in medical centers. It replaces traditional paper tokens with a digital system, allowing patients to request tokens remotely and doctors to manage patient flow efficiently in real-time.


📖 Table of Contents


🚀 About the Project

In many small and medium-scale medical centers, patient queues are managed using manual paper tokens. This leads to:

  • Physical Presence Required: Patients must visit early just to get a number.
  • Uncertain Wait Times: No visibility on "Now Serving" numbers, causing overcrowding.
  • Administrative Burden: Staff manually track skipped numbers and manage disputes.

MediQ solves these issues by providing:

  • For Patients: Remote token requests, live queue tracking, and real-time push notifications.
  • For Doctors: A secure dashboard to manage sessions, accept/reject requests, and control the live queue.

✨ Key Features

🧑‍⚕️ For Doctors

  • Secure Authentication: Role-based login for authorized staff.
  • Session Management: Create, start, pause, and end consultation sessions (Morning/Evening).
  • Request Management: View incoming token requests and Accept or Reject them.
  • Live Queue Control:
    • Call the Next patient.
    • Mark patients as Served or Absent.

👤 For Patients

  • Remote Booking: "Choose Yourself" interface (no login required) to request a token.
  • Smart Form: Select Specialization -> Doctor -> Available Session.
  • Live Tracking: View "Your Token" vs. "Current Token" in real-time.
  • Push Notifications: Get alerted when your request is accepted or when it's your turn.

🛠 Tech Stack


🏗 Architecture

MediQ Architecture

The app follows a Serverless Architecture to ensure low latency and real-time updates.

  • Real-time Sync: Uses Firestore listeners to instantly reflect token status,queue changes across all devices.
  • Context-Awareness: Updates Doctors and Patients via Push Notifications.

🏁 Getting Started

Prerequisites

  • Node.js (LTS version recommended)
  • Expo Go app installed on your physical device (iOS/Android) or an Emulator.

Installation

  1. Clone the repository:

    git clone [https://github.com/lakshanpd/MediQ.git]
    cd mediq
  2. Install dependencies:

    npm install
  3. Configure Firebase:

    • Create a project in the Firebase Console.
    • Enable Authentication and Firestore.
    • Create a .env with follwoing details.
    EXPO_PUBLIC_FIREBASE_API_KEY=
    EXPO_PUBLIC_FIREBASE_AUTH_DOMAIN=
    EXPO_PUBLIC_FIREBASE_PROJECT_ID=
    EXPO_PUBLIC_FIREBASE_STORAGE_BUCKET=
    EXPO_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=
    EXPO_PUBLIC_FIREBASE_APP_ID=
    EXPO_PUBLIC_FIREBASE_MEASUREMENT_ID=
    
    EXPO_PUBLIC_PUSH_TOKEN_KEY=
  4. Run the application:

    npx expo start
  5. Scan the QR code with the Expo Go app on your phone.


🏁 App Walkthrough

Patinet Journey Doctor Journey Realtime token management Realtime queue management

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

About

A Digital Token Management System for Medical Centres

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages