# visionLabs Roku visionLabs Roku is a private Roku app scaffold for viewing home security cameras on a TV. The current starter path is Frigate-backed, with Roku reading a static inventory of cameras that are managed by Frigate instead of embedding raw camera credentials in the app. ## Product direction - Brand family follows the user's existing `Labs` naming pattern. - V1 uses a static packaged camera configuration. - V2 adds in-app camera and layout editing. - V3 moves camera metadata and layout persistence to a backend service. ## Technical direction - Roku SceneGraph app - Camera feeds delivered from Frigate in a Roku-friendly format, ideally HLS - Static JSON config for the first prototype - Future backend for editing, persistence, and auth ## Project layout - `manifest` - Roku channel metadata - `source/main.brs` - app entry point - `components/MainScene.xml` - initial SceneGraph UI - `components/MainScene.brs` - scene behavior - `config/cameras.json` - static Frigate-backed starter camera config - `docs/FRIGATE_SETUP.md` - notes for mapping cameras through Frigate - `docs/ROADMAP.md` - delivery phases and constraints ## Notes Roku is not a great target for raw RTSP feeds. With Frigate in the middle, the clean path is to let Frigate manage discovery, auth, and stream brokering, then expose a Roku-friendly live feed format from there. ## Next steps 1. Set the real Frigate base URL in `config/cameras.json` 2. Map the four starter cameras in Frigate using the same IDs as the Roku config 3. Load config into the UI 4. Render a static multi-camera grid 5. Add edit mode and persistence strategy