Skip to content

Web Application

CABA Clinic Appointment Booking Application

A bilingual web application for managing clinic appointment requests, doctor availability, and role-based access for patients, doctors, and receptionists.
CABA clinic appointment platform showing doctor discovery, appointment booking, availability, and administration interfaces

Project Overview

Client
Academic Project
Year
2023
Project status
Academic Case Study
Industry
Healthcare

Services

  • Web Development
  • Web UI/UX Design

Technologies

  • JavaScript
  • PHP
  • MySQL

CABA is a bilingual clinic appointment booking application developed as an academic project.

The application brings several common clinic workflows into one website. Patients can browse doctors and request appointments, doctors can manage their profiles and availability, and receptionists have broader access to appointment and clinic administration.

The interface supports English and Arabic and provides different views and actions depending on the user’s role.

The Challenge

Appointment booking involves more than selecting a doctor and submitting a form. Patients need to understand who is available, doctors need control over their schedules, and receptionists need a practical way to oversee appointments and clinic information.

These users also have different responsibilities, so the application needed to keep their actions clearly separated while still connecting them through the same booking process.

The bilingual interface added another consideration, with English and Arabic requiring appropriate layout direction and presentation across the application.

Design and Technical Solution

  • CABA was built as a server-rendered PHP application using Twig for templates and MySQL for application data.
  • The interface is organized around three user roles. Patients have access to doctor profiles and appointment-related screens, doctors have dedicated profile and working-day controls, and receptionists have additional administration screens.
  • JavaScript, jQuery, and AJAX are used for interactions where content or forms need to update without a full page reload. Shared Twig templates and frontend styles are used across the application to keep the interface consistent.
  • English and Arabic are supported through language-specific content and RTL styling, allowing the same application to serve both language experiences.

Results and Key Outcomes

  • CABA demonstrates a connected appointment-booking workflow rather than a collection of unrelated screens.
  • Patients can move from discovering a doctor to requesting and reviewing appointments. Doctors have their own area for managing profile information, availability, and appointment-related actions, while receptionists can access broader management functionality.
  • Role-based access keeps these responsibilities separated within the same application and provides a clearer experience for each type of user.
  • The project also brings English and Arabic into the same interface, including RTL presentation for Arabic, without requiring separate versions of the application.
  • From a development perspective, reusable templates and shared application logic provide a consistent foundation across the different sections of the website.
CABA clinic appointment platform showing doctor discovery, appointment booking, availability, and administration interfaces

Role-based access for patients, doctors, and receptionists

Patients can browse doctors, review availability, request appointments, and manage bookings. Doctors can manage their profiles, working days, and appointment requests, while receptionists have broader administrative access.

Clinic administration in one area

Receptionists can manage appointments, doctors, specialties, and selected clinic and website information from the administration area.

Technway Component Library showing a Storybook component catalog, button states, and a typed API surface

Design System

Component Library

A reusable Stencil.js component library that brings common interface patterns into a consistent, documented system for use across different web projects.

View Case Study
Technway digital platform case study showing bilingual pages, service cards, and the headless content architecture

Headless CMS

Technway Website

A bilingual website built with Next.js and a headless WordPress CMS, combining a custom frontend with structured content management for English and Arabic.

View Case Study
CABA Clinic Appointment Platform Case Study | Technway Solutions