Project : ITABAZA
iTABAZA : Revolutionizing Healthcare Access in Rwanda
Website : https://itabaza-2qjt.vercel.app/
Github repository : https://github.com/KABASINGAarsene/iTABAZA_FOUNDATION.git
DEMOVIDEO: iTABAZA : Demo video 5min
Presentation slides : Itabaza-final_presentation_slides.pdf
TEAM MEMBERS :
-
Adeline Iradukunda: a.iradukund3@alustudent.com
-
Arsene Kabasinga: a.kabasinga@alustudent.com
-
Esther Mushimiyimana:e.mushimiyi@alustudent.com
-
Jacob Ndayishimiye: j.ndayishim@alustudent.com
-
Joseph Nishimwe: j.nishimwe@alustudent.com
-
Justine Neema : j.neema@alustudent.com
Introduction to iTABAZA
Itabaza: Solution to Rwandan Health Care System
The reason I am writing this is because in Rwanda many people have to travel long queues, waiting times and unfairness in the quest to obtain quality health. First of all, queues are so long that patients are forced to wake up in the middle of the night, in order to wait in lines. Upon their arrival they can be directed to a place that is the equivalent of the no-go zone and here they are told that it is not impossible or they are ignored. The whole thing is unfair and aggravating since the country does not use an effective appointment system yet, and thus, people can skip the line by chance or personal acquaintances. Such a gap is time-wasting and at times even life-threatening. It is also very much a reason why many ill individuals end up waiting too long to get help and hence ending up with more serious problems in the future.
The other problem is that the system does not provide good feedback. Doctors and nurses cannot visualise easily where gaps in the service are and thus, they can hardly make improvements. They are not able to be as effective as they could be because they do not know what is really going on.
Altogether, the issues of long long waitings, delays, and inequality treatment do not allow most Rwandan people to get the healthcare they need.
Itabaza- a Rwandan digital platform and game changer created by a team of dedicated Rwandan software engineering students with aim of transforming access to health care with equal, transparent and efficient services. Itabaza simplifies the process of making medical appointments over the internet so that patients can visit the clinic in person, or even do a video visit, to reduce the time and overcrowding on the one hand, or to enable on-demand flexibility in access to care. Besides making an appointment, due to getting the required medical documents, it will be possible to leave feedback regarding their experience and, in this way, it will be their voices that will be used in order to constantly improve it. With the emphasis put on equality in access and accountability, Itabaza is not a tool, but it is a movement to the health care system in which everyone will be aware of their rights and the quality of healthcare services will be timely and reliable to every inhabitant of Rwanda.
Itabaza, which is the future of the healthcare landscape in Rwanda, means that the doctors and the nurses will no longer leave a patient hanging around hours without attending to them or favoring some patients. Holes will be varnished with technologies rather than exacerbating the issues, and each patient will get a feeling that they are the ones that are trusted, respected, and informed. Just start with a single appointment and Rwanda can get healthier in the eyes of all.
1.1 Problem Statement
Despite technological advances achieved in Rwanda, the healthcare booking system in Rwanda remains heavily manual and disorganized in most hospitals. Patients often travel long distances only to wait for hours, sometimes without even seeing a doctor that day. The underlying problems include:
I.Long Waiting Times in Hospitals
Patients can spend hours , sometimes even days waiting for a consultation due to a lack of appointment structure,
III. Lack of Transparency in Doctor Availability
Patients cannot know in advance which doctors are available, when, or where. This leads to blind visits, where patients gamble on whether they will receive care.
These issues affect both patient health and hospital productivity, and in emergency situations, they can be fatal.
1.2 Objectives
iTABAZA was born out of a vision to make healthcare delivery faster, more efficient, and more patient-centered. Its core objectives are:
I. Reduce Patient Wait Times
By allowing patients to book appointments digitally, where they can meet doctor virtually, and access services based on real-time doctor availability, iTABAZA reduces unnecessary hospital visits and overcrowding effectively.
II. Improve Patient-Doctor Communication
Integrated video call, and document sharing features allow patients to communicate with healthcare providers from their homes, improving trust and continuity of care.
Scope
iTABAZA is designed to be inclusive, scalable, and sensitive to Rwanda’s unique context. Here’s what the platform covers:
Accessible via web app
Currently it is accessible via th web app“https://itabaza-2qjt.vercel.app/”. Recognizing that not everyone owns a smartphone, the platform is also accessible via USSD which is considered for futur development , making it available to people in rural areas or with feature phones. This multi-accessibility model ensures inclusivity for all citizens.
1.4 Target Audience
iTABAZA has been designed to serve a broad range of stakeholders. This document is also written with each of them in mind:
1. Patients
Patients are the primary beneficiaries. They will use the platform to:
● Book appointments,
● easy to book virtual call (allowing patient unable to meet doctor to book visit doctor virtually)
● View medical records,
● sharing of document (doctor can upload document to be visible to patient dashboard via of prescription , exam lab or any other document) .
2. Doctors
Doctors will benefit from:
● easy to upload document features to patient view,
● Access to patient history (submmitted by patient while booking appointment),
- Doctor can meet doctor via call not alwys to meet in person , which means even in his/her holidays can still meet patient where she or he is
3. Hospital Administrators
Admins will:
● Create and manage doctor accounts,
● Configure service availability,
● Monitor patient support request.
Conclusion: A New Era in Healthcare Access
iTABAZA is not just a digital tool . It's a bridge between technology and social impact. It aligns with Rwanda’s digital transformation agenda and aims to modernize healthcare delivery in a sustainable and inclusive way. This introductory chapter laid the foundation for understanding the “why” and “who” of the project.
SYSTEM OVERVIEW
iTABAZA : Revolutionizing Healthcare Access in Rwanda
As Rwanda modernizes its healthcare infrastructure, it is crucial that technological interventions are designed to match the real needs of hospitals, doctors, patients, and policymakers. iTABAZA is not just another app; it is a thoughtfully engineered solution to Rwanda’s systemic healthcare bottlenecks.
This chapter presents a comprehensive overview of the system what it does, how it works, who uses it, and how inclusivity is embedded in its core design.
Core Features
iTABAZA is built around a modular system of interconnected features. These modules are designed to function independently but work together to provide a seamless user experience.
VI. Video Call Consultations
● With this feature, patients can:
● Book a remote consultation
● Share screen on call
Admin Management of Doctor Visibility
Admins can:
- Under admin dashboard can see all booked appointments and all users(numbers and name of platform users)
● Create, edit, or deactivate doctor profiles
- Admin also recieves all the support ticket from all the users , in case they are encountering any issue with using the platform
2.2 How It Works
Let’s walk through how different users interact with the platform: Patient Journey
1. Registration: Patient signs up with name, phone number, email
2. Search & Book: patient can book appintment with any doctor as listed in on the platform
3\. **Consultation**: The patient visits physically or joins via video call
Doctor Workflow
1. Login: Doctor accesses dashboard showing today’s appointments.
2. Consult Patients: In-person or through video. Can see all of the patient submission like problem discription as record or written prescription.
3. Doctor can submit support ticket , and this support ticket in case he/she is encountering issue with appointment booked or any other thing inconvenient to him/her under his/her dashboard
4. After appointment doctor can upload document to patient
5. One more thing , if doctor mark the appointment as complete will immidiately update to patient dashboard that that appontent is marked complete , this means patient will be completely informed about his/her appointment before and after meeting doctor.
Admin Tools
1. Dashboard Access: Overview of hospital platform operations on itabaza
4\. **Support request**: Receive all support request from users of this platform both patient and doctor
2.3 User Roles & Privileges
The platform recognizes and separates user privileges clearly.
| User Type | Key Functions |
|---|---|
| Patients | Book appointments, join video calls, access medical records and send support ticket |
| Doctors | view patient history and description before meeting patient , can meet videocall with patient in case doctor is not in holidays , can send support ticket. |
| Admins | Create doctor accounts, can monitor all the activities/traffic under the platform. |
2.4 Accessibility & Inclusiveness
One of iTABAZA’s strongest main objective is its uncompromising inclusiveness.
USSD & SMS for Rural Access (future development)
We have discovered that ussd is costly high to integrate it into the code because we need to pay for it realtime activation monthly
● A special USSD code like *131# lets users this is example ussd however is not implemented yet which means after ativating this ussd feature we will e able to generate our own for this platform:
● Book appointments
● View upcoming visit details
● email notifications are sent for:
● Booking confirmation
● Appointment reminders
Disability-Friendly User Interface
● Large font & high contrast mode for low vision users
- Patient can describe his/her problem by just recording him/her speaking in less than 5 minutes .
Conclusion: A Connected, Transparent Healthcare System
iTABAZA is more than just a software platform , it is a healthcare revolution built to meet the unique challenges of Rwanda’s growing population. By providing tools tailored to every role in the medical ecosystem and ensuring access for even the most vulnerable, it sets a new standard in African digital health innovation.
In the next following part, we will dive deeper into technical and architectural design , how this system was built, the tech stacks used, and how scalability, security, and data privacy were prioritized from day one.
KEY FUNCTIONALITIES
As Rwanda’s healthcare ecosystem advances, the need for intelligent, inclusive, and responsive platforms becomes more urgent. Hospital Quick was built from the ground up to address both the day-to-day pains and the strategic gaps in hospital workflows, patient experience, doctor collaboration, and public health governance.
III. Access to Digital Prescriptions and Lab Results
After consultation:
● Patients receive digital prescriptions under his/her dashboard
● Lab test results are uploaded automatically once available
● All documents are stored in supabase securely and can be downloaded anytime
V. Book Video Call Consultations
Ideal for:
● Patients in remote districts
-
Easy to recieve care in busy life condition
CHAPTER 4 : TECHNICAL DESIGN
iTABAZA is developed through an advanced, safe, and highly accessible digital infrastructure so as to provide more consistent and consistent healthcare service in the country of Rwanda. This document part is dedicated to the technical design of the system made in layperson terms even by persons who are not software engineers . This makes it transparent and understandable by all the doctors and individuals such as patient who use the system..
4.1 System Architecture
At its core, Hospital Quick connects patients, doctors, hospital staff, and government systems through several digital channels:
● Web App: Patients can book appointments, join video consultations, receive prescriptions, and again patient can submit historical medical record before meeting doctor for doctor ro understand exact problem that patient is encountering .
● USSD (Short Code Dialing) “future development feature”: For users without smartphones or internet access, USSD codes (e.g., *123#) allow interaction with the platform using basic phones. Patients can check doctor availability, book visits, and get notifications all offline. This is for future development
● Backend APIs : All our platforms is highly dependent on the APIs mostly for connecting frontend with backend . backend is structured for orgising and calling data front-end or users enterfase and process the data to be correctly stored into the database (supabase “postSQLlite related database) , and making sure everything runs smoothly across ths iTABAZA web application .
4.2 Security & Compliance
● Patient Privacy & Encrypted Communication: All personal and medical data are stored securely and encrypted. This means only authorized users (such as a patient and their doctor) can view the information. This is correctly respected in database (supabase) for users to access certain information stored in data it must undergo authentication checkup to knw the privilege of person asking certain information.
● Secure Access (OTP & Biometrics): To prevent unauthorized signup, the system uses One-Time Passwords (OTP) sent to the user's phone. On supported devices, fingerprint or facial recognition may also be used. This is for making sure that the users trying to sign up is using the email/cridentials available since they are used during appointment confirmation emailing .
● Role-Based Access Control: Not everyone in the system sees the same thing. A patient can access their document as uploaded by doctor and appointments, while
I. Key Features:
● Digital prescriptions and lab results sharing between doctor to patient
● Video call consultations
● Admin have privilege of mananging the platform traffic
II. Target Users:
● Patients (urban and rural)
● Doctors & hospitals (public and private)
● Government agencies and policymakers
- health innovators
III. Social Impact:
● Reduce long waiting lines
● Improve maternal and emergency care
●Enhance healthcare trust through transparency
**Technical Specifications**
1. Backend
Language:
- Node.js (JavaScript)
Frameworks & Libraries:
- Express: Web server framework for building REST APIs.
- dotenv: Loads environment variables from .env files.
- cors: Enables Cross-Origin Resource Sharing.
- bcrypt: For password hashing and security.
- jsonwebtoken: For JWT-based authentication.
- multer: Handles file uploads.
- nodemailer: For sending emails.
- nodemon: Development tool for auto-restarting the server.
- axios: Promise-based HTTP client for making API requests.
- node-fetch: For making HTTP requests (alternative to axios).
- otp-generator: For generating one-time passwords (OTPs).
- redis: For caching and possibly session management.
- @supabase/supabase-js: For interacting with Supabase (a backend-as-a-service platform, used for real-time features and database).
Scripts:
- "server": "nodemon index.js" (starts the backend server with auto-reload)
Database:
The presence of SQL migration scripts and Supabase client which uses a PostgreSQL database, for managing via Supabase.
2. Frontend
Languages:
- HTML, CSS, JavaScript
Frameworks & Libraries:
- AOS (Animate On Scroll): For scroll-based animations (https://unpkg.com/aos@next/dist/aos.css and aos.js).
- Bootstrap 5: For responsive design and UI components (https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css).
- SweetAlert: For beautiful alert dialogs (https://cdnjs.cloudflare.com/ajax/libs/sweetalert/2.1.2/sweetalert.min.js).
- FontAwesome: For icon fonts (local CSS and webfonts).
- Service Worker: For PWA (Progressive Web App) support (manifest.json, service worker registration in JS).
- Supabase JS (via Skypack CDN): For real-time features and backend communication (https://cdn.skypack.dev/@supabase/supabase-js).
Structure:
- Modular JavaScript files for different features (e.g., doctor-dashboard.js, appointment-doctor.js, etc.).
- Custom CSS for various pages and components.
- HTML pages for different user roles and flows (admin, doctor, patient, etc.).
3. Other Technologies
Supabase:
- Used both in backend and frontend for real-time data sync, authentication, and database operations.
Redis:
- Used in the backend, likely for caching or session management.
Nodemailer:
- For sending emails ( OTPs)
4. How to Run the Project
Backend:
- Install dependencies: npm install (in the Backend/ directory).
- Start server: npm run server .
Frontend:
- Static files served from the Frontend/ directory.
- Open Frontend/index.html or other HTML files in a browser.
Environment Variables:
-
Backend uses .env for configuration (database URLs, secrets, etc.).
-
Frontend Supabase keys are placeholders and should be set for production.
To Run Project
Step 1 : git clone https://github.com/KABASINGAarsene/iTABAZA_FOUNDATION.git
Step 2 : setup backend
-
cd Backend
-
Create .env to Setup the environment by touch .env
-
Copy and paste the following code into your created .env file, make sure that the corresponding value is replaced by your actual credentials such as email must be your , for password must be your app password not you personal password
# Server Configuration
**PORT=**8080
NODE_ENV=production
# Supabase Configuration
SUPABASE_URL=http://…….. # Replace with your actual project url link from superbase
SUPABASE_ANON_KEY= YOUR PUBLIC TOKEN #replace with you actual public token from supabase
SUPABASE_SERVICE_ROLE_KEY=SUPABASE_SERVICE_ROLE_KEY
# JWT Configuration
JWT_SECRET=JWT_SECRET
# Email Configuration (Gmail)
EMAIL_USER=REPLACE WITH YOUR EMAIL
EMAIL_PASS=REPLACE WITH YOU APP PASSOWRD
Step 3 activate your backend
npm install
npm run server
Step 4 : activate frontend
- Move from backend to root directory
- cd Frontend
- Python -m http.server 3000