11 / 24Next →
Doctor–patient care platform2022

Mental Health Management System

A role-based care platform where doctors and patients share assessments, therapy activity, events, progress reports and messages, with a rule-based NLP support chatbot.

ContextNIBM
Year2022
TypeWeb
StatusCompleted
RoleFull-stack web development

Project media coming soon

Screenshots and demo videos for this case study will appear here.

Overview

The system gives doctors and patients separate experiences. Patients choose a doctor, complete predefined assessments and daily activities, plan events, track progress and message their doctor. Doctors review their patient list, new patients, reports and therapy sessions. A support chatbot answers common questions.

PHPMySQLJavaScriptHTMLCSSPHPMailer
Challenge

Mental-health care involves ongoing context rather than one-off appointments. The project had to connect scheduling, assessments, activity tracking, reports and communication around each patient.

Approach

I built the interface in HTML, CSS and JavaScript, with the application layer in PHP and MySQL across more than 25 endpoint scripts. They cover authentication, email verification and password recovery through PHPMailer, patient assignment, events, activities, progress, reports, therapy tools and doctor–patient chat. The chatbot normalises input with tokenisation, Porter stemming and stop-word removal before matching it against known intents.

Outcome

This was my first end-to-end system. It gave me practical experience with role modelling, relational data and multi-step workflows, and showed me what I would build differently today.

Engineering decisions
01

Normalise before matching

The chatbot lowercases input, strips punctuation, tokenises, stems with the Porter algorithm and removes stop-words. Phrasings like "feeling anxious" and "I feel anxiety" then reach the same intent without a trained model.

02

Looking back

This early version builds SQL queries by string concatenation and stores passwords as plain text. Today I would use prepared statements, password_hash() and password_verify(), and session hardening, and those are the first changes I would make before any real deployment.

What I built
01Separate doctor and patient dashboards with profile management
02Doctor selection, patient lists, therapy sessions and shared event planning
03Predefined assessments, daily activities, progress tracking and reports
04Doctor–patient messaging, notifications, email verification and password recovery
05Rule-based NLP support chatbot with stemming and stop-word filtering
Next projectHelp USA →