Unilinq
AppA universal remote for home theater and AV that solves the actual problem. Existing apps replace a pile of physical remotes with a pile of digital ones; Unilinq organizes control around what you're trying to do, and hides which device handles what.
Overview
Every universal remote app on the market recreates individual device remotes on a phone screen. The user still context-switches between the TV remote, the receiver remote, and the streaming box remote — the cognitive load that made the original pile of remotes annoying is entirely intact.
Unilinq is built around an activity model instead. "Watch a movie" is one unified remote; the routing of volume to the receiver, input switching to the TV, and transport controls to the streaming box happens invisibly underneath. Capability routing is defined per activity, not per device.
The architecture is a shared Rust core with a native iOS shell, and device support ships as modules against a versioned capability vocabulary — Roku over ECP with SSDP discovery, Apple TV, receivers, and Blu-ray players — so adding a manufacturer is a module, not a fork.
Key Features
- Activity-based control model rather than per-device remotes
- Per-activity capability routing across multiple devices
- Versioned capability vocabulary with namespaced commands
- Device modules — Roku ECP, Apple TV, receivers, streaming boxes
- SSDP-based network discovery
- Per-instance capability detection (not every Roku has volume control)
- State synchronization across devices in an activity
- Shared Rust core with a native iOS presentation layer
- Deliberately scoped to AV control, not full home automation
Tech Stack
Architecture Highlights
Have a hardware integration problem?
Device discovery, protocol adapters, and shared cross-platform cores — I build the layer between your app and the hardware.
Start a Conversation