Inspiration
My wife has Type 1 diabetes. She uses the typical apps to monitor her blood sugar and decide when to take insulin, eat something, or go for a walk. But every one of those decisions comes from staring at a graph and interpreting the trends yourself. The app shows you a line. You do the analysis, all day, every day, forever.
Meanwhile, she wears an Oura Ring that tracks her heart rate, sleep patterns, and activity, while her CGM tracks her glucose. Two rich data streams about the same body, sitting in two apps that have never spoken to each other.
Yet the connection between them is exactly what matters. A short night of sleep raises insulin resistance the next morning. A workout today changes how food affects her tomorrow. Her cycle phase changes how much insulin the same meal requires. She knows all of this from lived experience, but her apps don't.
We built GlyIQ to merge both data sets and use AI to find those patterns. Instead of handing her another graph to interpret, it gives her actual insights and actionable information.
What it does
Morning briefing: It compares last night's sleep, HRV, and resting heart rate against her personal baseline and adjusts the day's coaching before breakfast. After a rough night, it recommends taking action earlier because the same carbs can cause a higher spike after poor sleep.
A live feed, not just a chart: Readings, advice, and discoveries scroll through one stream: "In range and steady" → "Climbing. Walk now." → "Meal report: peaked at 179."
Proactive nudges: It notices things instead of waiting for an alarm. Glucose rising with no meal logged? "Did you eat?" Twenty minutes after a meal? "Walk now. It works better than waiting an hour." Insulin active and glucose falling? "Have fast carbs within reach." A warning before the low, not after.
One-photo meal logging: Snap a photo of the plate and Claude's vision model itemizes the food with carb estimates and confidence levels. Nothing is logged until the user adjusts, rejects, and confirms each item. AI proposes. She disposes.
A memory: Two and a half hours after every meal, the app records what actually happened, including pre-meal glucose, peak glucose, and when the peak occurred.
Pre-meal check-in: Tell the app what you're about to eat and it answers based on your history: "You've had this three times. Your average rise was +64 mg/dL, with a worst peak of 190. You typically took 5 units and still spiked. Late-peaking meals like this are the kind of situation worth discussing with your care team. You were also active today, so your sensitivity may be higher. Watch for a low, not just a high."
Pattern insights: From months of ring data, the app can identify things like her optimal bedtime, computed at around 9:46 PM and associated with roughly 8 mg/dL lower morning glucose, the next-morning benefit of active days, weekly routine drift, and cycle-phase patterns detected through ring temperature. The luteal phase can raise insulin resistance, but almost no mainstream glucose app accounts for it.
One hard line: the app never recommends insulin doses. It tracks doses, computes insulin on board, warns about stacking, and reports historical outcomes. Dosing decisions stay with her and her care team.
How we built it
Node.js and TypeScript backend: An Express backend polls Abbott's LibreLinkUp API for live sensor data, including reverse engineering around a client-version block Abbott shipped. It also parses the Oura export, which contains 266 nights of data, runs a rules-based automation engine every reading cycle, and persists meal outcomes automatically.
Claude vision: Claude Opus 4.8 uses structured outputs to turn meal photos into itemized carb estimates with confidence levels for each item.
React dashboard: A mobile-first, dark interface with no unnecessary clutter. It includes a live terminal-style feed, a glucose chart with an in-range band, camera-native meal logging, and tap-to-edit logs.
A statistics engine, not canned text: Every insight is computed from the data with integrity thresholds, including minimum nights per bucket and minimum effect sizes. If the signal isn't there, the insight refuses to fire.
Challenges we ran into
Abbott's undocumented API: We had to work through version gating, account lockouts after failed logins, and the distinction between patient and follower accounts.
Honest data framing: We had months of ring data but only gained CGM access during the hackathon. The insight engine therefore runs real statistics over real Oura data, while using clearly labeled simulated glucose history that can be replaced with real CGM data as it accumulates.
Drawing the medical line: We wanted the coach to be genuinely useful around insulin by tracking doses, warning about stacking, and reporting historical outcomes without ever crossing into dosing advice.
Accomplishments we're proud of
Live blood sugar from a real person on stage. A coach that catches unlogged meals from the glucose curve itself. A bedtime recommendation computed from 266 real nights. And a human-confirmation flow that makes the AI trustworthy instead of just impressive.
What we learned
We learned that getting access to glucose APIs is hard.
What's next for GlyIQ
Glucose forecasting, such as "You'll peak around 175 in 40 minutes. Walk now to stay under 150." The Oura workouts API to compare cardio and strength effects, live exercise fueling guidance, and Dexcom support.
Log in or sign up for Devpost to join the conversation.