Robodor builds industrial door controllers. I built the company's SCADA viewer: a desktop application that monitors up to ~100 controller cards, running entirely on the factory LAN with no cloud dependency. Operators get live card status, detail views for individual controllers, alarms, and a history with an audit trail. The system is read-only by design — it watches the equipment, it never commands it. I designed and built the whole thing alone, from the polling service to the interface, in 2026.
The architecture centers on a single polling service: one Node.js process owns all Modbus communication, over both TCP and RS485, and is the only thing that talks to the controller cards. On each cycle it compares new readings against the previous snapshot and pushes only the diffs over WebSocket to the UI — with up to ~100 cards, sending full state every cycle would be wasteful. History and the audit trail are written to SQLite. The interface is a Tauri desktop app in React and TypeScript: live card detail views, alarms, and deliberately operator-focused UI states. It is read-only monitoring and runs entirely on the factory LAN, with no cloud dependency anywhere in the stack.