An unofficial Roku client for Immich, the self-hosted photo and video server. Browse your albums on the big screen and play them as a full-screen slideshow — with your Roku remote.
Not affiliated with or endorsed by the Immich project. "Immich" is used only to describe compatibility.
- Sign in to your own Immich server with email + password (a scoped API key is minted on the device; your password is never stored).
- Browse your albums in a poster grid.
- Full-screen photo slideshow with auto-advance and remote control (OK = play/pause, ◀ ▶ = previous/next, Back = exit).
- Plays videos in an album inline, then continues the slideshow.
- Companion screensaver — pick an album and let it play when the TV is idle, auto-refreshing as you add photos. (Roku requires screensavers to ship as a separate package, so this is a second channel in this repo.)
- Timeline / all-photos browsing, favorites, search.
- Deep-link "play this album" launch.
- A reachable Immich server (LAN IP or HTTPS URL).
- A Roku device. HTTP LAN servers work directly; HTTPS is also supported.
- Enable Developer Mode on the Roku: press
Home Home Home Up Up Right Left Right Left Right, follow the prompt, set a password, and note the Roku's IP address. - Build the package:
python tools/build.py - Sideload
dist/immich-roku.zipfrom the Roku's dev page (http://<roku-ip>), or with the helper:ROKU_IP=<roku-ip> ROKU_PASS=<dev-password> bash tools/deploy.sh
- Validate the code without a device:
npx brighterscript - Watch the on-device debug log:
telnet <roku-ip> 8085.
MIT