Health AI · 2025
MedHive
An AI health companion, with a model hub and a design for hospitals to train models together without sharing patient records.
- My role
- Frontend developer
- Team
- Four developers
- When
- April 2025
Overview
MedHive is a health AI web app built by a team of four developers. Visitors ask a health assistant about symptoms, try three diagnostic models, and read how hospitals would train models together without sharing patient records. I built its model pages, much of the assistant's chat, the homepage and the admin dashboard.
The problem
Hospitals cannot share raw patient records, so health AI often trains on narrow data and serves some patient groups worse. Clinicians also need answers during a consultation, where a slow round trip to a model gets in the way. MedHive's answer is federated learning, where only model updates leave a hospital, plus fast inference on Groq.
Screens
What I built
- The model pages: the symptom-analysis and pneumonia X-ray pages, which send a patient's symptoms or chest X-ray to the model and show its prediction, and part of the breast-cancer page.
- The health assistant: much of the chat interface, and the CopilotKit API route.
- The model hub: the page that groups the models by diagnostic, imaging, NLP and predictive use.
- The homepage: the hero with a typed headline and a 3D Spline robot, and the sections below it.
- About and navigation: the about page, the navbar, the footer and the loading screen.
- The contribute page: how a hospital joins the federated network.
- Profile, pricing and admin: the user profile, the pricing cards and credit modal, and the admin dashboard.
Key features
- A health assistant on Groq that streams answers and can send a list of symptoms to the symptom-analysis model.
- A model hub with symptom analysis, pneumonia detection from chest X-rays and breast cancer prediction, each served from its own Hugging Face Space.
- Sign-in with Supabase, with user and data-provider roles.
- Data-provider pages for uploading datasets and managing API keys.
- An admin dashboard for models, datasets and system health.
- A federated-learning prototype with Flower, in a separate repo.
Decisions and challenges
- One model, one Space. Each diagnostic model runs in its own Hugging Face Space with its own endpoint, so a model can be retrained or replaced without touching the others or the app. The cost is a separate cold start for each model the first time it is called.
- The assistant calls a model instead of guessing. The chat route gives Groq a
predictDiseasetool, so symptom questions are answered by the trained symptom model, and the language model writes the answer around its result.
System architecture
The Next.js app serves the pages and one chat route, which streams the assistant's answers from Groq. The model hub calls each model's own Hugging Face Space, and the federated-learning prototype is a separate Flower app that the site presents but does not call.
Results
- Live at medhive-fl.vercel.app.
Built with
Next.js 15 and TypeScript · Tailwind CSS and shadcn/ui · Framer Motion · Supabase · Groq through the Vercel AI SDK · Hugging Face Spaces · Recharts, Leaflet and TanStack Table · Spline · Flower