rokdock
Health Uyari
- License — License: NOASSERTION
- Description — Repository has a description
- Active repo — Last push 0 days ago
- Low visibility — Only 5 GitHub stars
Code Basarisiz
- child_process — Shell command execution capability in build/afterPack.cjs
- fs.rmSync — Destructive file system operation in build/afterPack.cjs
- process.env — Environment variable access in build/afterPack.cjs
- fs module — File system access in build/afterPack.cjs
- Hardcoded secret — Potential hardcoded credential in build/afterPack.cjs
Permissions Gecti
- Permissions — No dangerous permissions requested
Bu listing icin henuz AI raporu yok.
Cross-platform desktop app for Roku development: device discovery, terminal sessions, remote control, sideloading, screenshot capture, automation scripting, and a built-in AI assistant with Gemini, Claude, Codex, and Copilot
RokDock is a cross-platform desktop control center for Roku development. It brings
the majority of your Roku development workflow into one window: discover devices on
your network, open BrightScript debug terminals, drive an on-screen remote, sideload
channels, capture and compare device screenshots, automate device tests, fire
deeplinks, build SceneGraph image assets, and read the official Roku developer docs
in-app. An opt-in AI assistant is built in.
It is for Roku channel developers who are tired of juggling their remote control, a
telnet client, the deeplink tester, an image editor, and a dozen docs tabs. RokDock
is one tool for all of it.
Features
Connect and debug
- Device discovery - automatic SSDP discovery plus manual device entries by IP.
- Debug terminal - a multi-tab telnet terminal with BrightScript syntax
highlighting, search, command history, output streaming to a file, and
click-to-open detection of JSON payloads and URLs in the log.
Control and test
- Virtual remote - an on-screen ECP remote with configurable keyboard bindings
and a text-entry field. - Sideloading - upload a
.zip(or signed.pkg) channel package straight to a
developer-mode device. - Screenshot capture - pull device screenshots, then zoom, pan, measure, compare
against reference overlays (onion-skin), and auto-refresh, with a saved history. - Deeplinks - reusable launch and input deeplink presets, fired at the selected
device and shareable via the RokuDeepLinking JSON format. - Automation scripts - sequence device actions as typed steps, record from the
remote, and import/export RASP (Roku Automation Script Protocol) YAML.
Build assets
- 9-Patch editor - author stretchable
.9.pngassets with live previews and
paired 1080p/720p export. - SVG converter - rasterize and quantize SVGs to Roku-ready PNGs, with per-color
recoloring before export. - JSON viewer - a CodeMirror 6 editor for the JSON you click out of the terminal,
with format, minify, sort, fold, and nested-JSON unescaping.
Reference and AI
- Developer Docs - an in-app browser for the official Roku documentation, with
full-text search, a What's New change feed, browser-style history, and an offline
cache. - roBot (Beta) - an opt-in assistant with swappable providers (Anthropic,
Gemini, OpenAI-compatible, or a local CLI such as Claude, Copilot, Gemini, or
Codex) and per-prompt redaction of device IPs, names, and serials.
The app
- Light, dark, and system theming with a UI scale and color tint.
- Launch any tool on its own (per-tool shortcut, file association, or
--tool). - Automatic update checks on launch and from the Help menu (installed builds).
Install
Most users should grab a packaged build. Download the latest from the
Releases page and pick the
artifact for your platform:
| Platform | Artifact |
|---|---|
| Windows (installer) | RokDock-<version>-Setup-win-x64.exe |
| Windows (portable) | RokDock-<version>-Portable-win-x64.exe |
| macOS (Apple silicon or Intel) | RokDock-<version>-mac-arm64.dmg / RokDock-<version>-mac-x64.dmg |
| Linux (AppImage) | RokDock-<version>-linux-x64.AppImage |
| Linux (Debian/Ubuntu) | RokDock-<version>-linux-x64.deb |
macOS. The macOS build is signed with a Developer ID certificate and notarized, so it
should open normally with no extra steps. The following is troubleshooting only: if macOS
ever refuses to open the app (Gatekeeper reports it is damaged or from an unidentified
developer, usually after a download the browser flags), clear the quarantine attribute and
reopen it:
xattr -cr /Applications/RokDock.app
Windows. The installer adds Start Menu shortcuts (including one per tool). The
portable build runs without installing and writes no registry or Start Menu entries,
so it adds no shortcuts or file associations by design.
Linux. The AppImage runs anywhere. The .deb integrates RokDock and its per-tool
launchers into the application menu on Debian and Ubuntu.
Documentation
Full guides for every screen and feature live in docs/user/:
- Getting Started - install, first launch, and the workspace layout
- Devices - discovery, manual devices, ports, properties, developer mode
- Terminal - the debug terminal, search, history, and URL/JSON interaction
- Remote Control - the virtual remote and keyboard control
- Screenshot Preview - capture, zoom, overlays, measurement, history
- Sideloading - installing channel packages on a device
- Deeplinks - configuring and launching deeplink presets
- Script Editor - automation scripts and RASP
- Capture Preview - the live HDMI capture feed
- JSON Viewer - inspecting JSON from terminal output
- 9-Patch Editor - stretchable image assets
- SVG Converter - SVG to quantized PNG
- Developer Docs - the in-app Roku documentation browser
- roBot - the AI assistant and provider configuration
- Settings - the full settings reference, tab by tab
- Keyboard Shortcuts - the shortcut reference
- Themes - app theme, syntax themes, and fonts
Developer notes: Release Builds.
Standalone tools
The editors and the docs browser also open on their own, without the dock:
- Per-tool shortcuts - the installer adds a shortcut for each tool (JSON Editor,
SVG Converter, 9-Patch Editor, Script Editor, Developer Docs). - File associations - opening a
.json,.svg,.rasp, or.rscriptfile
launches the matching tool (opt-in, set up by the installer). - Command line -
RokDock --tool <json|svg|ninepatch|script|docs> [path]opens a
single tool, optionally loading a file.
A tool opened this way runs in its own window and coexists with the same tool opened
from the dock. See Getting Started.
Building from source
RokDock is an Electron app built with electron-vite, React, and TypeScript.
Prerequisites: Node.js 20 or newer (the Vite 7 toolchain needs 20.19+ or 22.12+)
and npm.
npm ci # install exactly from the committed lockfile
npm run dev # launch the app with hot reload
Use npm install only when intentionally adding or changing a dependency.
Build and verify:
npm run build # bundle main, preload, and renderer
npm run verify # the gate: typecheck + lint + prose check + unit tests
npm run verify:full # verify plus the Playwright end-to-end suite
Note that npm run build does not type-check, so npm run verify is the real gate.
The same gate runs in CI on every pull request and push to main
(.github/workflows/ci.yml).
Package installers (per platform, from a matching OS):
npm run dist:win # Windows (NSIS installer + portable)
npm run dist:mac # macOS (DMG + ZIP)
npm run dist:linux # Linux (AppImage + deb)
Repository layout
| Path | Responsibility |
|---|---|
src/main |
Electron main process: window lifecycle, IPC handlers, and device services (SSDP, ECP, telnet, sideload, screenshots) |
src/preload |
The secure context-bridge API exposed to the renderer |
src/renderer |
The React UI and Zustand state: the dock and every tool window |
src/shared |
Types and constants shared across processes (no DOM or Electron imports) |
src/ai-core |
The portable, dependency-free AI engine: adapters, streaming, and redaction |
scripts |
Build, packaging, and documentation-capture tooling |
tests |
Vitest unit/integration tests and the Playwright E2E suite, mirroring src/ |
Screenshots
The debug terminal, tokenized and themed, with a JSON payload detected and ready to
open in the editor.

The full on-screen remote, plus saved deeplink presets you can fire in a click.
Built-in tools: a JSON viewer, a 9-Patch editor, and an SVG recolor/exporter.
The in-app Developer Docs: the official Roku documentation with full-text search and
a What's New feed.

The Screenshot Viewer, comparing a captured device frame against a safe-zone overlay.

The roBot panel, grounded in the Roku docs.

More figures are in the user guide.
Platform support
RokDock is developed and tested primarily on Windows. macOS and Linux builds are
provided on a best-effort basis and may have rough edges (for example, macOS needs
Local Network and Screen Recording permissions for device discovery and capture).
Reports and fixes for macOS and Linux are welcome.
Contributing
Contributions are welcome. See CONTRIBUTING.md for setup, the code
conventions, the verification gate to run before opening a pull request, and how the
test suite exercises device-facing logic without a real Roku.
License
Apache License 2.0. See LICENSE and THIRD-PARTY-NOTICES.md.
Yorumlar (0)
Yorum birakmak icin giris yap.
Yorum birakSonuc bulunamadi