-
Notifications
You must be signed in to change notification settings - Fork 2
V2 Roadmap
Current release: v1.4.73. V1.0.0 shipped the full protocol layer, pages, icon library, behavior modes (tap, toggle, momentary, shift), keystroke recorder, media keys, button LEDs, dark mode, Settings window, launch at login, device self test, and a notarized release pipeline. Everything below is what shipped since, in five tracks; items marked done shipped in the version noted.
This page mirrors the intent of ROADMAP.md in the repo; when they disagree,
trust the repo file and open a PR to sync the wiki.
Goal: a stranger opens the app and assumes Apple shipped it.
- Sidebar (NavigationSplitView), tile drag-and-drop with Home Screen shift semantics, drag a tile onto a sidebar page to move it there
- Profile version history in place of undo/redo (autosave snapshots, Settings > History browses/restores, Duplicate Profile is the manual checkpoint)
- Hover states, animated selection, first-run onboarding, Settings window, native toolbar, in-app Help (Cmd ?)
- Page +/− always visible (v1.4.72): native segmented control at the top of the sidebar (fixes missing add/delete on some layouts)
- LED rainbow cascade on connect, also runs on demand as "Test Device"
- Brightness fade-in on connect instead of a hard jump (v1.4.1)
- Haptic tick on page change: shipped v1.4.1, pulled v1.4.2 (fired too late to read as useful feedback)
- Public repo, MIT license, README, PROTOCOL.md, CONTRIBUTING.md, SECURITY.md, notarized GitHub Releases, Homebrew tap, CI on every push
- RazerStreamKit split into its own standalone SPM package (v1.4.0), so other apps can depend on just the protocol layer
- Wiki (install, FAQ, changelog, this roadmap)
- App-switching pages (v1.2.0): the deck follows the frontmost app to its mapped page; manual page changes always win; Settings > Apps has the mapping editor
- Profile import/export
- Native
.razerstreamsingle-profile file, Settings > History > Export/Import (v1.4.1) - Elgato Stream Deck / Loupedeck 6.3 import: not started, need real sample files from those formats
- Native
- Icon libraries beyond SF Symbols (v1.1.0): bundled Lucide + Bootstrap
Icons, user folders of PNG/SVG, a Recent tab (v1.4.0)
- Custom SVG size normalization (v1.4.72 line): needs reporter confirmation on macOS 26.5.2
- Live tiles (self-updating tile/knob content):
- Clock (v1.1.0)
- CPU/RAM meter (v1.4.1): bars on a tile, small pie charts on a knob strip (v1.4.6), via the standard Mach host APIs
- Disk free space (v1.4.5): pick any mounted volume, defaults to the boot drive
- Still open: now playing with album art (needs Apple's private MediaRemote framework), calendar next-up
- Haptics (v1.4.0): buzz on button/knob press and touch, Settings tab with a pattern picker
- Two-finger swipe to change pages: shipped v1.4.1, pulled v1.4.2 (this device's physical bezel ridges make the gesture unpleasant, a hardware ergonomics issue independent of the code)
- Knob acceleration (v1.4.1): fast turns step Volume/Brightness 3x
- Idle dimming (v1.4.1): screen and button LEDs fade after inactivity, off by default; the status light is never touched, so connection state always stays visible; LED writes paced (v1.4.3 line)
- Knob rotation presets beyond the basics: [x] Volume, Screen Brightness, Page Navigation, Track (v1.4.1), [x] Button LED Brightness (v1.4.3), [x] Screen + LED Brightness combined (v1.4.4); continuous-turn LED race fixed (v1.4.7 / included in 1.4.72). Still open: mouse scroll as a preset.
- Webhooks, Home Assistant/MQTT: not started
- Multi-action macros (fire a sequence of actions from one control): called out by a user as a must-have for a real Loupedeck replacement. Not started; needs a real design pass first.
- Plugin API: not started. Concrete requirements gathered from a real Jellyfin-controller use case (see the repo's ROADMAP.md for the detail) point at full-tile/full-knob custom image drawing at 10-20fps plus two-way data, rather than the current declarative tile/knob config shape.
- Loupedeck CT hardware support: blocked on a protocol capture from an actual CT owner; different device from the Stream Controller this app targets
- Whether RazerStream needs the old Loupedeck software fully uninstalled or just quit first: untested, open question
- Profile-per-app as an alternative to the current page-per-app-within-one- profile model: a real design fork, not decided
- Can't add/delete pages (#1): fixed in v1.4.72
- SVG icons too small (#2): fix shipped in 1.4.72 line; awaiting confirmation
The maintainer isn't building these; PROTOCOL.md means a port never needs a serial sniffer.
- Linux kit and CLI: RazerStreamKit is Foundation plus POSIX serial I/O;
needs one small device-discovery shim behind
#if os(Linux). Good first contribution. - Linux GUI (GTK or Qt), Windows (realistically C# against PROTOCOL.md)
Open an issue or comment on an existing one, then send a PR. Style rule: no double dashes and no em dashes in comments, docs, or commit messages; join clauses with semicolons instead. See CONTRIBUTING.md.