Six plans for the next phase of islet

The foundation is solid. The daemon runs, the API accepts data, the iOS app logs meals and shows predictions. But "it works" is not the same as "it works well." The next phase is six focused improvements that take islet from a system that functions to one that feels right. The shape of the work Six plans, ordered by dependency. Some are small fixes to obvious gaps. Some are structural changes that touch the database schema, the API, and the iOS app in a single pass. All of them come from the same source: using the system every day and noticing where it falls short. ...

March 15, 2026 · 4 min · Christopher Griffiths

Per-user databases and instant food templates

Two changes that have nothing in common except timing. On Friday, islet gained per-user SQLite databases for multi-user data isolation. On Saturday, the iOS food logger gained local food templates for instant meal estimation without an API call. One is about infrastructure. The other is about speed. Both matter more than they look. Safety note: islet is a personal project and is not medical advice. It does not make dosing decisions. The single-user assumption Until Friday, islet had one SQLite database. One file. One user. Every glucose reading, every meal, every treatment went into the same tables. That was fine when the only user was the person who built it. ...

March 1, 2026 · 4 min · Christopher Griffiths

Two platforms, one design language, zero shared code

On Wednesday evening, the islet web UI got a navigation overhaul: hash routing, a floating action button, a Canvas 2D glucose chart, and dedicated pages for food and treatment input. Eighteen hours later, the iOS app got the same overhaul: TabView, a floating action button, a SwiftUI Charts glucose chart, and sheet modals for input. Same design. Same information architecture. Not a single line of shared code. Safety note: islet is a personal project and is not medical advice. It does not make dosing decisions. ...

February 28, 2026 · 6 min · Christopher Griffiths

From daemon to device: islet at 86 commits

On February 15th, islet was a Python script that polled Nightscout every 60 seconds and stored the results in SQLite. Nine days and 86 commits later, it runs as a self-hosted platform: its own ingest API, analytics engine, relay system, and a native iOS app on my phone. Nightscout polling is off. The only remaining dependency is a relay for the second phone. Safety note: islet is a personal project and is not medical advice. It does not make dosing decisions. PCU values are informational only and must not be used as dosing advice. ...

February 24, 2026 · 4 min · Christopher Griffiths

Cutting the cord: islet runs without Nightscout

For eight days, islet has been the primary ingestion path. Tonight it became the only one. Nightscout polling is off. Both phones POST directly to a Raspberry Pi in the next room, and the system does not care. That sounds undramatic because it should be. The entire point of the last eight days was to make this moment boring. The dependency that was hard to see Nightscout was never just a database. It was the implicit trust boundary for every data flow in the system. Sensor readings went from phone to Nightscout to islet. Treatments went the same path. Every piece of data arrived through someone else’s API, on someone else’s schedule. ...

February 23, 2026 · 4 min · Christopher Griffiths