Web interface for managing olcrtc tunnel instances.
- SvelteKit 5
- Bun
- Drizzle ORM
- SQLite
- Tailwind CSS v4
Download and run the interactive deployer:
sh <(curl -fsSL https://raw.githubusercontent.com/relativemodder/olcgui/main/get-deployer.sh)If curl is not available, use wget:
sh <(wget -qO- https://raw.githubusercontent.com/relativemodder/olcgui/main/get-deployer.sh)The deployer will prompt you for a language, install directory, ports, and registry prefix, then create compose.yml, .env, data/, and olcrtc/.
The stack consists of two containers:
webserves the SvelteKit frontend athttp://localhost:5173apistays private inside the Compose network and is only accessible throughweb
The api container mounts the olcrtc repo and database on volumes so data persists across restarts. The web container proxies /api/* to the internal backend running at API_BACKEND_URL=http://api:3001.
bun install
bun run devCopy .env.example to .env if you need to override any paths:
DATABASE_URL=sqlite.db
OLCRTC_GIT_DIR=./olcrtc
OLCRTC_BUILD_DIR=./olcrtc
OLCRTC_BINARY_PATH=./olcrtc/build/olcrtc-linux-amd64
OLCRTC_DATA_DIR=./data/instances
MAGE_CMD=~/go/bin/mage
API_BACKEND_URL=http://localhost:3001Without a .env, everything resolves relative to process.cwd(), so a standard clone works with no extra configuration.
To compile olcrtc, you need Go and Mage. Use the Builds tab in the UI to start a build.

