Run OpenRemote on iOS
Build the app from source with Expo, install it on your iPhone, and connect it to an OpenCode server on your network.
Prerequisites
- macOS with Xcode installed. Expo SDK 54 targets iOS 15.1+ and Xcode 16.1+.
- Bun installed for project scripts and dependency management.
- A connected iPhone for LAN discovery and QR scanning. Simulator works for UI checks but not every network/camera path.
- OpenCode running on the same LAN.
Install dependencies
git clone https://github.com/blairhudson/openremote.git
cd openremote
bun install Start OpenCode
Use mDNS for automatic discovery, or bind to all interfaces for manual LAN connection.
Use a password before starting OpenCode on shared or public Wi-Fi:
OPENCODE_SERVER_PASSWORD=changeme123 opencode --mdns Run the iOS app
For the day-to-day development flow used by OpenRemote, connect an iPhone and run:
bun run dev For Expo's general iOS run flow, use:
bun run ios Only regenerate native iOS artifacts when native identity, config, or modules change:
bun run dev:prebuild Connect
OpenRemote searches for servers automatically. If discovery is unavailable, enter your Mac's LAN address and port, usually 4096.
The optional plugin adds a TUI sidebar QR code for faster setup:
npx opencode-openremote@latest Troubleshooting
- Allow local-network and camera permissions when iOS asks.
- Keep your iPhone and OpenCode host on the same network.
- If discovery fails, use
opencode --hostname 0.0.0.0and connect to the host LAN IP manually. - If native identity looks stale, run
bun run dev:prebuild, then reinstall withbun run dev.