QUIC ยท HTTP/3 ยท LB ยท k3s barges ยท Snapshots ยท Mesh

Tug your localhost to the internet

Expose local HTTP through a QUIC control tunnel and streaming HTTPS/HTTP/3 ingress. Scale with load-balanced barges (process or k3s), restore tunnel inventory from snapshots, join mesh/VPI, or co-host product apexes with vhosts.

Get TunnelTug on GitHubRead the DocsOpen Dashboard

Why TunnelTug?

โš–๏ธ

Load-balanced tunnels

LB mode assigns subdomains to backends (sticky or round-robin). Barge fleets auto-register and scale without rewiring clients.

โšก

QUIC control channel

Clients dial tunnel.tunneltug.com over UDP with TLS (ALPN: tunneltug). Yamux multiplexes many concurrent streams per tunnel.

๐Ÿ“ก

Streaming + HTTP/3

Ingress tuned for SSE and WebSockets over HTTPS and HTTP/3 โ€” not just short request/response.

๐Ÿงฉ

k3s barge fleets

Run server replicas as a StatefulSet so web deploys do not hard-reset the fleet. Rolling image updates keep N-1 backends live.

๐Ÿ’พ

Durable snapshots

Before shutdown or image roll, each barge writes tunnel inventory under a hostPath. On start, mesh records restore and clients re-dial pending tunnels.

๐ŸŒ

Subdomain routing

Multi-tenant host routing โ€” myapp.tunneltug.com points at your local :3000. Optional namespaces for fleet isolation.

๐Ÿ”—

Mesh + VPI + DoH

Publish myapp.tunneltug.tunnel, resolve .mesh / .social / .tunnel locally, or load zone-specific DNS-over-HTTPS via dns.yaml.

๐Ÿ 

Product vhosts

Serve apex apps (this site) next to tunnel subdomains from one engine โ€” same pattern as 0Trust product edges.

๐Ÿ”

0Trust identity

Dashboard secured with passkeys and hardware-bound DBSC sessions via the 0Trust identity plane.

0 tunnels registered ยท control at tunnel.tunneltug.com

Architecture

Browser โ”€โ”€HTTPS / HTTP3โ”€โ”€โ–บ Product edge (:443)                              โ”‚               โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”               โ”‚ apex / www                  โ”‚ myapp.tunneltug.com               โ–ผ                             โ–ผ         Dashboard (:3082)              TunnelTug LB                                       QUIC :9000 ยท HTTP :8444                                              โ”‚                                       Server barge(s)                                       process or k3s StatefulSet                                       snapshots โ†’ reconnect                                              โ”‚ Yamux                                              โ–ผ                                       Tunnel Client โ†’ Local App :3000

Quick start

1. Get TunnelTug

Clone the engine, build the binary, and grab a subdomain + token from the dashboard.

github.com/TunnelTug/tunneltug

2. Run the client

tunneltug -mode client \\
  -server tunnel.tunneltug.com \\
  -domain tunneltug.com \\
  -subdomain myapp \\
  -local 3000 \\
  -token \"\"

Visit https://myapp.tunneltug.com after the client connects. Full docs โ†’