Laboratory Management System
Full-stack clinical lab platform with WhatsApp notifications, Keycloak RBAC, and automated patient report delivery.
Deployment
Live on GCP
Services
5 Docker containers
Auth
Keycloak RBAC
Notifications
WhatsApp API
The Problem
Clinical labs struggle with manual test tracking, paper-based records, and no automated patient communication — causing delays, errors, and a poor patient experience.
The Solution
A unified platform combining a FastAPI backend, Next.js frontend, and a dedicated Node.js WhatsApp microservice. Admins manage labs, patients, and test results centrally, while patients receive automated WhatsApp messages for appointments, reports, and billing — all secured through Keycloak group-based RBAC.
What it does
Patient Management
- Register and manage patient records with full history
- Track test orders and sample collection status
- Generate, store, and deliver lab reports digitally
- Per-patient billing and invoice management
Lab Administration
- Multi-lab support with owner-based access isolation
- Keycloak group-based role management per lab
- Admin dashboard for system-wide control and analytics
- Lab-level config — owner_username, keycloak_group_id
WhatsApp Notifications
- Dedicated Node.js WhatsApp microservice
- Automated alerts — report ready, appointments
- Real-time delivery status tracking
- Decoupled from the main API for fault tolerance
Infrastructure & DevOps
- 5 Docker containers: FastAPI, Next.js, PostgreSQL, Keycloak, WhatsApp
- GitHub Actions CI/CD for automated deploys
- Nginx reverse proxy with SSL via Certbot
- Deployed and tested end-to-end on GCP
Tech stack
Want something like this built?
Let's talk about your trading system, internal tooling, or automation pipeline.
Start a Conversation