MediHelp+ is a full-stack healthcare assistant platform that leverages AI to assist users with health-related concerns. This document outlines the Site Reliability Engineering (SRE) strategies, API specifications, frontend responsibilities, and monitoring plans to ensure a reliable, scalable, and secure experience.
- Provide SRE guidelines for backend and frontend teams.
- Define API endpoints and integrations.
- Ensure high availability, reliability, and recoverability.
- 👨💻 Backend & Frontend Developers
- 🏁 Hackathon Judges & Evaluators
Includes:
- Full API & database design
- Frontend UI components & monitoring
- SRE strategy (Uptime, Alerts, Recovery)
- Third-party integration: Google Gemini API
| Layer | Technology |
|---|---|
| Backend | Django 5.2, DRF 3.16, PostgreSQL, JWT |
| Frontend | ReactJS, TailwindCSS, Sentry, Web Vitals |
| AI | Google Gemini API |
| Docs | OpenAPI 3 via drf-spectacular |
- 🔐 User Authentication (JWT)
- 🤖 AI Symptom Checker (via Gemini API)
- 📜 Symptom History Logs
- 🆘 First Aid & Home Remedies
- 📚 Health Education Articles & Videos
- 🚨 Monitoring, Logging & Recovery (Uptime Kuma, PM2, Sentry)
| Endpoint | Method | Purpose |
|---|---|---|
/api/auth/register/ |
POST | Register user |
/api/auth/login/ |
POST | Login + token |
/api/auth/logout/ |
POST | Logout |
/api/auth/token/refresh/ |
POST | Refresh JWT |
| Endpoint | Method | Purpose |
|---|---|---|
/api/symptoms/check/ |
POST | Submit symptoms for AI check |
/api/symptoms/history/ |
GET | View symptom check history |
/api/symptoms/history/{id}/ |
GET | View specific record |
| Endpoint | Method | Purpose |
|---|---|---|
/api/firstaid/ |
GET | List all remedies |
/api/firstaid/{id}/ |
GET | Get remedy detail |
/api/firstaid/?q=keyword |
GET | Search by keyword |
| Endpoint | Method | Purpose |
|---|---|---|
/api/content/articles/ |
GET | List health articles |
/api/content/videos/ |
GET | List educational videos |
/api/content/articles/{id}/ |
GET | View article |
/api/content/videos/{id}/ |
GET | View video |
/api/content/articles/ (admin) |
POST/PUT/DELETE | Manage articles |
| Endpoint | Method | Purpose |
|---|---|---|
/api/schema/ |
GET | OpenAPI schema |
/api/docs/ |
GET | API Explorer (Swagger/Redoc) |
| Endpoint | Method | Purpose |
|---|---|---|
/api/healthz/ |
GET | Used for uptime checks |
| Component | Purpose | Dependency Ready |
|---|---|---|
| Login / Register | User authentication | ✅ |
| Symptom Checker | Submit symptoms to AI | 🔜 |
| Symptom History Viewer | Review previous checks | 🔜 |
| First Aid & Remedy Search | Access help content | 🔜 |
| Article / Video Viewer | Educational content | 🔜 |
| Sentry + Web Vitals | Monitor performance & errors | ✅ |
| Error/Recovery Modals | UX fallback for failures | ✅ |
⚠️ Note: Map & emergency features are temporarily delayed.
| Metric | Tool | Threshold | Action |
|---|---|---|---|
| API Health | Uptime Kuma | 2 fails | Alert (Discord) |
| PostgreSQL Status | Cron + pg_isready | No response (2m) | Alert (Discord) |
| API Error Rate | Django Logs | > 5% 500s | Alert (Discord) |
| Gemini Latency | Middleware | > 2s | Log Warning |
| Gemini Failures | Middleware | > 1/min | Alert (Discord) |
| Metric | Tool | Threshold | Action |
|---|---|---|---|
| JS Errors | Sentry | Any Critical | Alert |
| LCP | Web Vitals | > 2.5s | Log Warning |
| CLS | Web Vitals | > 0.1 | Log Warning |
| FID | Web Vitals | > 100ms | Log Warning |
PM2orsystemdauto-restarts backend- Healthchecks.io pings monitor uptime
- UI fallback modals prompt user refresh
- RAG used for medical reasoning
- Fallback messages for API unavailability
- Logs track all AI interaction issues
CustomUser– Roles and AuthSymptom– Symptom inputsCondition– Related diagnosesSymptomCheck– Records of submissionsFirstAidInstruction,HomeRemedy– Health helpArticle– Medical education content
MIT License
For issues, please reach out via the [mesudmelaku25@gmail.com] .