Robo-Boy
Robo-Boy is a web, desktop, iPhone, and Android interface for controlling and visualizing ROS 2 robots. It includes camera streaming, configurable control pads, 3D visualization, behavior-tree editing, and custom themes. All interfaces run the same React codebase; the native packages are lightweight Tauri shells and connect to a separately installed ROS stack.
Start With The App
The shortest route. The app needs only the ROS services, so there is no certificate to create and no proxy to run.
- Install a package for the current release:
.deb ·
.rpm ·
.dmg ·
.exe ·
.ipa
The iPhone package is unsigned, because signing an iOS app needs an Apple account. Sign it with your own and sideload it: iOS application.
- Start the ROS services on the computer that runs ROS:
git clone [email protected]:tessel-la/robo-boy.git
cd robo-boy
docker compose up -d --build ros-stack
- Open the app. It asks for the address of the computer running ROS —
localhostwhen that is the same
See Application for desktop setup, or Android application to run the same controller from Android Studio on a phone.
Start With Docker
Use this when Robo-Boy has to be opened in a browser, including from a phone or another computer. A browser needs HTTPS before it grants a page a camera, and the app and the robot services have to share one origin; Caddy and a locally trusted certificate supply both.
Prerequisites
- Docker with Docker Compose
- mkcert
Run
git clone [email protected]:tessel-la/robo-boy.git
cd robo-boy
mkcert -install
mkdir -p infra/caddy/certs
mkcert -key-file infra/caddy/certs/local-key.pem -cert-file infra/caddy/certs/local-cert.pem localhost 127.0.0.1 ::1 YOUR_HOST_IP
docker compose up -d --build
Replace YOUR_HOST_IP with the computer's local network IP if Robo-Boy will be opened from another device.
Open https://localhost, or https://YOUR_HOST_IP from a device on the same network.
Stop
docker compose down
Documentation
See the documentation index for application usage, desktop packaging, development commands, ROS workspace overlays, custom gamepads, and architecture.
License
See LICENSE.