All projects
LiveFull-StackBusiness Websites + CMS

Arab Clinic

A full-stack platform for a medical center. Patients can ask questions and get answers from specialist doctors, leave reviews, and contact the clinic.

Role
Full-Stack Developer (solo)
Timeline
1 Month
Client
Arab Clinic
Arab Clinic
More in Business Websites + CMS:Arab ClinicMohamed Salem Al Kaabi Law Firm
01

Overview

Arab Clinic is a full-stack platform built for a medical center. Its goal is to make it easier for patients to reach the center. Before, they had to call or visit to get an answer. Now they can ask online, read answers from specialist doctors, and see what other patients say.

I built the whole system myself: a bilingual (Arabic / English) public website, an admin dashboard where the clinic team manages content, and a NestJS + MongoDB API behind both.

The problem

Patients had no simple way to reach the center. A question meant a phone call, feedback was lost, and the website was a static brochure the team couldn't update.

The solution

I built a patient-facing site with accounts, a doctor-answered Q&A section, reviews and contact forms. Everything is managed from an admin dashboard, so the clinic can update doctors, departments, news and answers without a developer.

02

Who It's For

P

Patients

Create an account, ask medical questions, follow their answers, leave reviews and contact the center.

A

Admins

Manage questions and answers from specialist doctors, reviews, contact messages and all website content.

03

Key Features

Patient Questions

Patients ask a question, optionally choosing the department. Admins answer on behalf of specialist doctors, then publish the question as a public page with an SEO-friendly URL, where readers can vote whether the answer was helpful.

Reviews & Testimonials

Patients leave reviews. Admins approve them and choose the order they appear on the website.

Contact & Inquiries

Contact forms send messages to the admin dashboard, so no inquiry gets lost.

Patient Accounts

Sign up with email verification, Google sign-in, password reset, and an account page with the patient's own questions.

Admin Dashboard

Manage doctors, departments, branches, news, blogs, banners, jobs and site settings, with role-based permissions.

Bilingual & RTL

Full Arabic and English support with right-to-left layouts and localized content.

05

Architecture

01

Website

Next.js (App Router), bilingual, SEO-optimized pages for patients

02

Admin Dashboard

Same Next.js app, protected routes, role-based access

03

REST API

NestJS modules: questions, patients, doctors, testimonials, contact…

04

Database

MongoDB via Mongoose, plus email notifications through Nodemailer

06

Challenges & Solutions

Building the patient questions flow

Challenge

Questions had to go from a patient to the admin, get an answer from a specialist doctor, and then be published. Along the way they needed different visibility rules for the patient, the admin and the public.

Solution

I modeled each question with a review status (pending, answered or rejected) and a separate publish flag. Each question is linked to a patient, a department and the doctors who answered it. The API is split into patient, admin and public endpoints. Published questions get a unique Arabic-friendly slug for SEO, readers can vote whether an answer was helpful, and the patient gets an email when their question is answered.

Have a project like this in mind?

I'd love to help you build something great. Tell me what you're working on.

Let's talk