AI co-pilot for clinic front desks in Rwanda — IBM AI Builders Challenge
# Bwiza Workbench
**AI co-pilot for clinic front desks in Rwanda** — symptom intake, urgency triage, specialty routing, and clinician-ready notes with human-in-the-loop review.
Built for the IBM AI Builders Challenge with IBM Bob (July–September 2026). Extends ideas from Ubuzima Bwiza healthcare work.
## Problem
Front-desk staff at clinics and health centers face long queues, inconsistent triage, and language barriers (English / Kinyarwanda). Clinicians need structured intake notes without replacing clinical judgment.
## Solution
Bwiza Workbench provides:
- **Patient chat intake** — describe symptoms in EN or RW
- **Rule-based triage engine** — urgency (low / medium / high) + specialty routing
- **Clinician note draft** — structured summary for EMR handoff
- **Human-in-the-loop** — nurse/clinician marks triage as reviewed
- **Optional LLM enhancement** — Groq API for richer note drafts when `GROQ_API_KEY` is set
> **Disclaimer:** This is an AI-assisted draft tool only. It does not diagnose or prescribe. Qualified clinicians must confirm all decisions.
## Tech stack
| Layer | Stack |
|-------|--------|
| Frontend | React 19, TypeScript, Vite, Tailwind CSS 4 |
| Backend | Node.js, Express, TypeScript |
| Database | SQLite (better-sqlite3) |
| AI (optional) | Groq OpenAI-compatible API |
## Quick start
```bash
# From repo root
npm install
cd server && npm install && cd ..
cd client && npm install && cd ..
cp .env.example .env
# Optional: add GROQ_API_KEY for LLM note enhancement
npm run dev
```
- **Frontend:**
localhost
- **API:**
localhost
## Demo flow
1. Switch role to **Patient intake**, enter symptoms (e.g. *"My child has had fever and cough for 2 days"*).
2. View triage result: urgency, specialty, suggested actions, clinician note.
3. Switch to **Clinician review**, verify the draft, click **Mark reviewed**.
## API
| Method | Endpoint | Description |
|--------|----------|-------------|
| GET | `/api/health` | Health check …