Flamingo
Flamingo is my IoT device and space management service — the boring, reliable ledger underneath a smart building: what devices exist, where they are, what they last reported, and what work is scheduled around them.
Devices report over MQTT — door sensors, battery levels, diagnostic pings, alerts — and Flamingo turns that telemetry into structured event records tagged with the space each device sits in. Spaces nest (a room in a floor in a building), devices can move between them with tracked history, and recurring tasks can be scheduled against a device or a space and followed to completion. Everything is exposed over ConnectRPC and published to Kafka so other systems can build their own read models from the same events.
Flamingo is my IoT device and space management service — a single source of truth for the physical devices I track, the spaces they live in, and the stream of events they generate. I wanted one place that knows what a device is, where it is, what it reported last, and what work is scheduled around it, instead of that knowledge being scattered across a broker, a spreadsheet, and my head.
Devices report in over MQTT — door sensors, battery levels, diagnostic pings, alerts — and Flamingo bridges that telemetry into structured event records, tagging each one with the space the device currently sits in. Spaces can nest (a room inside a floor inside a building), devices can be static or move between spaces with a tracked history, and recurring tasks (cleanings, maintenance checks) can be scheduled against a device or a space and followed through to completion. Everything is exposed over ConnectRPC and, where I want other systems to react to changes, published onto Kafka so downstream consumers — like my facility data sync — can build their own read models off the same events.
It’s less “smart home dashboard” and more the boring, reliable ledger underneath one: what devices exist, what they’re telling me, and what’s supposed to happen next.