Logo Lanfrica

MauriceOS/Ubora-Health

Domaine:

healthcarenatural language processing

Type de record:

softwaretools
Créateur:
Mau
Hôte:
Ubora is a primary-healthcare operations app for coastal Kenya that turns evening stock reports into audit-ready redistribution - not an AI doctor. # Ubora **Edge-AI primary healthcare operations** for coastal Kenya — not an AI doctor. Nurses report the evening shift in Swahili or English. Ubora reconciles what left the pharmacy shelf against the day's case load, matches verified surplus to a nearby stockout, and drafts a Kenya MoH **Form S11** for a human to authorize. **Competition:** Build with Gemma · GDG Pwani · Track 3 (PHC / Smart Health) ``` Nurse report → Gemma 4 extract → Edge audit → Micro-swap match → Draft Form S11 → DHO / pharmacist authorize ``` ## What it does | Step | Who | What | |------|-----|------| | **1. Edge audit** | Nurse Fatuma (Wasini) | Voice/text shift report → cases vs drawdown → flags unexplained issues and verified surplus | | **2. Micro-swap** | Dr. Farida (DHO) | Surplus↔deficit matches ranked by expiry loss avoided − boda transport cost | | **3. Governance** | Pharmacist Wanjiku | Pre-filled Form S11 → issuer, receiver and pharmacist sign in order → print | ### What Gemma does, and what it does not **Gemma 4 turns nurse language into structured fields** — commodity, quantity, unit, batch, expiry, case counts, drawdown reason. That is its whole job. **Deterministic TypeScript owns every consequence:** the audit arithmetic, the surplus gate, the match ranking, the civic-value maths, and the Form S11 fill. The model never computes a number that reaches a voucher, and it cannot authorize anything. Three humans still sign each transfer. If a report omits the batch or expiry, Ubora asks for it rather than letting the model invent one. If a spoken shelf count contradicts the bin card, the lot is held for recount instead of being offered for transfer. ## Stack - **Next.js 16** (App Router) + **React 19** + TypeScript - Custom CSS design system — no UI framework - **Primary model:** `gemma-4-26b-a4b-it` via Google AI Studio / Gemini API - **Offline fallback:** `gemma4:e2b` via local Ollama - **Domain adaptation:** QLoRA notebook in-repo for strict JSON extraction from Swahi …