MediAssist – AI Health Triage Web App with Real-Time Symptom Analysis
MediAssist is a full-stack AI health triage web application built using Python Django 4.2 and the Groq API powered by Meta's Llama 4 Scout language model. It is one of the most impactful AI final year projects you can build, combining natural language understanding, real-time streaming, and structured medical triage logic into a single polished product. Users simply describe their symptoms in plain language, and the AI assistant gathers information through a guided conversation before delivering a detailed, colour-coded urgency assessment.
This project is ideal for students pursuing a final year project in computer science, information technology, or artificial intelligence. It demonstrates strong command of backend web development, API integration, real-time data streaming, database design, and frontend UX — all in one codebase. You can browse all final year projects with source code on CodeAj to find the one that best fits your academic requirements.
What is MediAssist?
MediAssist acts as a first-line conversational health triage assistant. When a user types in a symptom — for example, "I have a severe headache and feel dizzy" — the AI does not rush to conclusions. Instead, it follows a structured clinical protocol: asking one follow-up question at a time about symptom duration, severity on a scale of 1 to 10, location, associated symptoms, medical history, current medications, and any recent events that might be relevant. After collecting sufficient data (typically 4 to 5 responses), it generates a comprehensive assessment report.
The report is divided into clearly labelled sections: Symptom Summary, Possible Conditions (Differential Considerations), Severity Assessment, Recommendation with an urgency badge, Home Care Tips, and Warning Signs to Watch. Each response is colour-coded — green for home care, yellow for a doctor visit, orange for urgent care, and red for emergency — making it immediately clear what action the user should take.
The application also includes a critical Emergency Override mechanism. If the AI detects any life-threatening symptom — such as chest pain, difficulty breathing, stroke signs, or sudden severe headache — it skips all follow-up questions and immediately displays an emergency recommendation alongside a flashing red banner in the UI. This feature alone makes MediAssist stand out as a responsible and safety-first Python final year project.
Key Features of MediAssist
Real-Time AI Response Streaming
MediAssist uses Server-Sent Events (SSE) via Django's
StreamingHttpResponse to stream AI tokens directly to the
browser as they are generated — the same experience users expect from
modern AI chat tools. There are no page reloads, no waiting for the
complete response, and no lag between the AI generating text and the
user seeing it. This architecture is an advanced demonstration of
asynchronous web communication in Python Django, making it a compelling
topic for your final year project presentation and viva.
Structured Triage Protocol with Urgency Classification
The AI follows a medically-inspired structured protocol defined in a dedicated system prompt module. It classifies every assessment into one of four urgency levels — Home Care, Doctor Visit, Urgent Care, or Emergency — and outputs a formatted report with actionable guidance. This structured output approach showcases how large language models can be constrained and directed to follow reliable, repeatable workflows, which is a key concept in applied AI development.
Emergency Detection with Visual Alert
The application maintains a list of critical emergency symptoms. The moment any of these are detected in the user's input — including chest pain, shortness of breath, stroke symptoms, loss of consciousness, or severe allergic reactions — the system bypasses all triage steps and fires an immediate emergency response. A flashing red banner appears in the UI to ensure the user cannot miss the alert. This feature demonstrates conditional AI behavior and safety-first design principles.
Persistent Conversation History with SQLite
Every conversation and message is stored in a local SQLite database using Django ORM models. The sidebar displays all past sessions grouped by date — Today, Yesterday, Previous 7 Days — exactly like a professional AI chat product. Users can switch between conversations, continue where they left off, and delete sessions they no longer need. All of this is implemented without any login or authentication, using a UUID stored in a signed browser cookie as the user identifier.
Smart Auto-Titling
Each conversation is automatically named based on the user's first message. This eliminates the need to manually label sessions and keeps the conversation history intuitive and scannable at a glance.
No Login Required — Anonymous Sessions
MediAssist uses Django's signed-cookie session framework to assign each visitor a unique UUID on their first visit. This UUID links the user to their conversation history without requiring account creation, email verification, or any form of registration. This simplifies the user experience significantly and is a practical demonstration of session management in web development.
Professional Dark Mode UI — Fully Responsive
The frontend is built entirely in vanilla HTML, CSS, and JavaScript with no frameworks. Despite this, it delivers a polished, modern dark-mode interface with a collapsible sidebar, quick-start symptom chips, and a mobile-friendly layout. This proves that a well-crafted vanilla frontend can match the quality of framework-based UIs — a point worth highlighting during your project demonstration.
Real-World Applications of This Project
Telemedicine and Remote Health Assistance
In regions where access to qualified doctors is limited, an AI triage system like MediAssist can serve as a first point of contact. It helps users decide whether their condition warrants emergency care, a doctor visit, or simple home remedies — potentially preventing both under-treatment and unnecessary hospital visits.
Hospital and Clinic Pre-Screening Systems
MediAssist's triage logic can be integrated into hospital portals to pre-screen patients before they reach reception. By collecting symptom data digitally and generating an urgency classification, healthcare staff can prioritise patients more effectively and reduce waiting times for critical cases.
Health Information and Awareness Platforms
The project can serve as the AI core for any health awareness or wellness platform, providing users with guided, evidence-informed symptom assessments as a first-line informational resource. Combined with features like AI health risk detection available on CodeAj, students can build comprehensive health platforms for their thesis projects.
Medical Training Simulations
Medical and nursing students can use a system like MediAssist to practice patient intake interviews. By interacting with the AI as though they are the healthcare provider reviewing the outputs, they gain exposure to differential diagnosis thinking and urgency classification in a low-risk, repeatable environment.
Insurance and Corporate Wellness Programs
Corporations can deploy a MediAssist-style tool on their employee wellness portals to provide 24/7 symptom guidance, reducing unnecessary sick-day claims and helping employees make informed decisions about seeking medical attention.
Technology Deep Dive
Django 4.2 as the Application Backbone
Django handles URL routing, ORM-based database operations, session management, and the SSE streaming endpoint. The project structure follows Django best practices with separate settings, URL configuration, model definitions, and view handlers — making the codebase clean, maintainable, and easy to explain during a viva examination.
Groq API with Meta Llama 4 Scout
The Groq API provides ultra-fast inference for the
meta-llama/llama-4-scout-17b-16e-instruct model.
Groq's LPU (Language Processing Unit) hardware delivers token generation
speeds that make real-time streaming feel instantaneous. The free tier
of the Groq API is sufficient to run MediAssist for development and
demonstration purposes, removing any cost barrier for students.
Server-Sent Events for Real-Time Streaming
The /chat/ endpoint returns a
StreamingHttpResponse with Content-Type: text/event-stream.
The server emits a sequence of events: a conv_id event
immediately to identify the conversation, repeated token
events as the model generates text, and a final done event
containing the conversation ID and auto-generated title. This SSE
architecture is simpler and more efficient than WebSockets for
one-directional server-to-client streaming.
SQLite via Django ORM
Two Django models — Conversation and Message
— store all chat data. The Conversation model holds the user UUID,
auto-generated title, and timestamps. The Message model stores each
individual turn with a role field (user or
assistant), full content, and creation timestamp.
SQLite requires zero configuration, making the project immediately
runnable on any machine after migrations.
What You Will Learn from This Project
By studying and presenting MediAssist as your final year project with source code, you will gain practical, demonstrable knowledge across several advanced topics: real-time web streaming with SSE, prompt engineering and system prompt design for structured LLM outputs, Django ORM database modelling, session management without authentication, vanilla JavaScript SPA behaviour without any framework, and REST API design with JSON request and response handling.
If you need help setting up the project, understanding the source code, or preparing your presentation, CodeAj offers Project Setup and Source Code Explanation as a dedicated add-on service. You can also get a custom project report, research paper, and PPT prepared specifically for MediAssist to match your university's submission format. For students who want something completely unique, the Idea Implementation service on CodeAj allows you to get a fully custom project built from scratch based on your own concept.
Important Disclaimer
MediAssist is an academic and educational project. It is not a licensed medical device and does not provide clinical diagnoses. All outputs from the application are AI-generated and are intended solely for informational and demonstration purposes. Always consult a qualified healthcare professional for any medical concerns.


