AI-powered clinical workflow platform for Indian hospitals.
Voxa replaces paper-based ward documentation with a unified digital system across all hospital roles — consultants, residents, interns, nurses, pharmacy, and lab — with real-time sync, AI-assisted form filling, and agentic department dispatch.
Built by NeuraData.
A doctor speaks or writes during a consultation. Voxa transcribes and extracts structured clinical data, auto-fills the relevant forms (consent, discharge, pharmacy prescription, investigation orders), and dispatches requests to the appropriate departments — all in one workflow. Every role in the hospital sees their relevant updates in real time.
- OPD & IPD workflows — dynamic forms per patient type and specialty
- Voice-to-form — Sarvam AI transcribes Indian-language speech, Gemini structures it into form fields
- AI-assisted forms — auto-fills consent, discharge, pharmacy, and nursing documentation
- Nurse integration — treatment chart, medication administration record (MAR), vitals charting with threshold alerts
- Agentic dispatch — approved orders fan out concurrently to pharmacy, lab, and nursing APIs
- Real-time sync — SSE for real-time updates across web portals and mobile applications; all roles see updates within 2 seconds
- ABHA integration — fetches or creates Ayushman Bharat Health Accounts; falls back to internal UUID on API timeout
- Offline-first mobile — SQLite store-and-forward for ward connectivity drops
- Multi-tenant — per-hospital tenancy with RBAC across consultant, resident, intern, nurse, pharmacy, and lab roles
┌─────────────────┐ ┌─────────────────┐ ┌──────────────────┐
│ Flutter App │ │ Next.js Portal │ │ Dept. Dashboards│
│ (Doctor/Nurse) │ │ (Web — All │ │ (Pharmacy, Lab, │
│ SSE │ │ Roles) SSE │ │ Nursing) SSE │
└────────┬────────┘ └────────┬────────┘ └────────┬─────────┘
│ │ │
└───────────────────────┼────────────────────────┘
│ HTTPS
┌────────────▼────────────┐
│ Go API Server │
│ Echo · pgx/v5 · OTEL │
└──────┬──────────┬───────┘
│ │
┌────────────▼──┐ ┌───▼────────────┐
│ Asynq Worker │ │ Realtime Hub │
│ (Async Jobs) │ │ SSE fanout │
└──────┬────────┘ └───────┬────────┘
│ │
┌───────────▼──────┐ ┌─────────▼──────────┐
│ PostgreSQL 16 │ │ Redis 7 │
│ pgvector · JSONB│ │ Asynq · Pub/Sub │
└──────────────────┘ └────────────────────┘
│
┌───────────▼───────────┐
│ OVH Object │
│ Storage (Audio files)│
└───────────────────────┘
AI pipeline (per consultation):
Audio (Opus) → OVH Object Storage
↓
[TranscriptionJob] → Sarvam AI (primary) / faster-whisper (fallback)
↓
[FormExtractionJob] → Gemini 2.5 Flash (structured JSON output)
↓
Doctor reviews pre-filled form → Approves
↓
[AgentDispatchJob] → concurrent department API calls (errgroup)
↓
SSE → department dashboards update in real time
| Layer | Technology |
|---|---|
| Backend | Go 1.23 · Echo v4 · pgx/v5 · pgxpool |
| Database | PostgreSQL 16 (JSONB · pgvector) · golang-migrate |
| Queue | Redis 7 · Asynq (priority queues) |
| Real-time | PostgreSQL LISTEN/NOTIFY → Redis Pub/Sub → SSE |
| STT | Sarvam AI (primary) · faster-whisper on OVH GPU (fallback) |
| LLM | Gemini 2.5 Flash · Gemini 2.5 Pro (surgical order sets) |
| Web | Next.js 15 App Router · TypeScript |
| Mobile | Flutter 3 · Riverpod · Drift (offline SQLite) |
| Infra | OVH Mumbai · Docker Compose · Nginx · GitHub Actions |
| Observability | OpenTelemetry · Prometheus · Grafana (Tempo + Loki) |
Domain-first layout — all code for a clinical domain lives together, not split across layers.
voxa/
├── cmd/
│ ├── api/ # HTTP server entrypoint
│ └── worker/ # Asynq worker entrypoint
├── internal/
│ ├── patient/ # Patient identity, ABHA integration
│ ├── admission/ # IPD/OPD admission lifecycle
│ ├── clinical/ # Case sheets, examination, diagnosis
│ ├── medication/ # Treatment chart, MAR, route changes
│ ├── vitals/ # Vitals charting, fluid balance, alerts
│ ├── investigation/ # Lab orders, results
│ ├── nursing/ # Nursing notes, tasks, shift handover
│ ├── surgery/ # Pre-op, operative notes, post-op orders
│ ├── discharge/ # Discharge summary
│ ├── auth/ # JWT, RBAC, sessions
│ ├── realtime/ # SSE hub, event routing
│ ├── ai/ # Form extraction, order generation, drug check
│ ├── audit/ # Immutable append-only event log
│ └── tenant/ # Multi-hospital tenancy
├── pkg/ # Shared utilities (pagination, crypto, ptr)
├── infra/ # PostgreSQL, Redis, storage, telemetry setup
├── migrations/ # SQL migration files (golang-migrate)
├── docker-compose.yml
└── Makefile
Each domain package contains: entity.go, repository.go (interface), service.go (interface), handler.go, worker.go, and a postgres/ subdirectory with the pgx implementation. No domain imports another domain directly.
Prerequisites: Go 1.23+, Docker, Make
# Clone
git clone https://github.com/swaindhruti/voxa
cd voxa
# Start local infrastructure (PostgreSQL, Redis)
docker compose up -d
# Run migrations
make migrate-up
# Start API server
make run-api
# Start Asynq worker (separate terminal)
make run-workerEnvironment variables are documented in .env.example.
Phase 1 — Hospital trial (current)
- Domain-first backend architecture
- Patient registration + ABHA integration
- Multi-role auth (consultant, resident, nurse, pharmacy, lab)
- IPD admission flow + ward/bed management
- Dynamic AI-assisted clinical forms
- Treatment chart + nurse MAR
- Vitals charting + threshold alerts
- Real-time SSE sync
- Agentic department dispatch
- Flutter app (doctor + nurse roles)
- Next.js web portal
Phase 2
- Voice-to-form pipeline (Sarvam AI full integration)
- WhatsApp post-care communication
- FHIR R4 export layer
- Multi-hospital onboarding
Private — All rights reserved. NeuraData © 2026.
