Skip to content

Getting started

volter-tunnel exposes a local port over a public, stable URL. It relays HTTP, streamed responses, and WebSocket traffic, and lets you reserve a friendly subdomain that survives reconnects.

Install

bash
bun add @volter/tunnel        # client library + CLI (runs under Bun)

This installs both the @volter/tunnel library and the volter-tunnel CLI.

Expose a port in two commands

bash
volter-tunnel login --host https://your-relay     # prove a GitHub identity, save an api token
volter-tunnel --port 3000 --tunnel-id my-app      # → https://my-app.your-relay  (+ QR code)
  • login authenticates against a relay and saves an api token to ~/.config/volter/token. Use --gist if you'd rather prove your identity via a GitHub gist and send the relay no token at all.
  • The run command prints the public URL and a scannable QR code. Reconnecting with the same --tunnel-id gives you back the same URL.

No account needed to try it

You can run a relay locally and point the client at it with --host http://127.0.0.1:8787 --auth-not-required — no hosted account required.

Common run flags

FlagMeaning
--host <relayUrl>Which relay to connect to (defaults to the public demo).
--tunnel-id <id>Request a specific reserved subdomain.
--basic-auth user:passGate the tunnel with HTTP basic-auth.
--auth-not-requiredLeave the tunnel open (no auth).
--no-qrDon't print the QR code.

Next steps

Apache-2.0 licensed.