Skip to content
All workCASE STUDY · 02 / 03
Full stackAI health data platform

Vithos

A multi-tenant platform that turns PDF lab reports into a queryable health dataset, with RAG chat over a person's medical history.

STACK
Next.jsExpress.jsSupabasepgvectorRedisBullMQ
Vithos logo
Vithos
01 — The problem

Lab results usually live in scattered PDFs, which makes it hard to see how a biomarker changes over time or to ask questions about your own history.

02 — Approach
  1. 01Uploaded PDFs go onto a BullMQ queue; workers parse the reports, extract biomarkers and generate embeddings.
  2. 02Structured results are stored in Supabase Postgres, with row-level security isolating each tenant's data at the database level.
  3. 03A chat interface retrieves relevant history with pgvector and answers grounded in the user's own records, alongside trend dashboards and nudges.
Architecture
  1. 1UploadPDF lab reports from the Next.js app
  2. 2QueueBullMQ on Redis schedules ingestion jobs
  3. 3WorkersParse reports, extract biomarkers, embed text
  4. 4StoreSupabase Postgres + pgvector, RLS per tenant
  5. 5UseRAG chat, trends and health nudges
03 — Highlights
  • RAG-based chat using pgvector for semantic retrieval over medical history.
  • Async ingestion pipeline (BullMQ + Redis) with scalable workers for parsing and embeddings.
  • Biomarker tracking and trend analytics with dashboards and health nudges.
  • Secure storage and sharing via Supabase row-level security for tenant isolation.
  • Backend self-hosted on a spare Android phone with push-to-deploy (see nas-deploy).
NEXT PROJECTnas-deploy