Open source, Apache-2.0

Expose localhost at a URL that never changes

Free tunnels for webhooks, demos and mobile testing. Claim a name once and keep it across restarts.

$ curl -fsSL https://tuzy.dev/install.sh | sh
Example session~/shop
$ tuzy http 3000
inspector: http://127.0.0.1:4040
● online https://shop.tuzy.dev → http://localhost:3000
15:04:12 POST   /webhooks/stripe 200 41ms
15:04:15 GET    / 200 12ms
15:04:15 GET    /@vite/client 200 8ms
15:04:16 GET    /api/cart 404 5ms

Up and running in a minute

Install with your package manager, log in with an emailed code, and share your app.

Install

macOS (Homebrew)
brew install nhtera/tap/tuzy
Windows (PowerShell)
irm https://tuzy.dev/install.ps1 | iex
Windows (Scoop)
scoop bucket add nhtera https://github.com/nhtera/scoop-bucket
scoop install tuzy
Anywhere with Go
go install github.com/nhtera/tuzy/cmd/tuzy@latest

First run

  1. Log in
    tuzy login
    A code arrives by email. No password, and the token stays in your OS keychain.
  2. Start a tunnel
    tuzy http 3000
    The first run asks you to pick your permanent name.
  3. Watch the traffic
    open http://127.0.0.1:4040
    Inspect, replay and copy any request as curl.

Built for the loop you already run

Point a webhook at your laptop, open your dev server on a phone, or show a client work in progress.

Names that stay yours

Claim up to 10 subdomains per account. Register a webhook URL once and it keeps working across restarts, laptops and CI.

  • shop.tuzy.dev
  • stripe-hooks.tuzy.dev
  • client-preview.tuzy.dev
tuzy http 3000 --name shop

Inspect and replay

Every request lands in a local inspector. Replay it after a fix, or copy it as curl.

open http://127.0.0.1:4040

Dev servers just work

WebSockets, HMR and streaming pass through. If Vite rejects the tunnel host, tuzy switches the Host header for you.

tuzy http 5173

Many tunnels, one file

Describe your tunnels in tuzy.toml, start them together, or run them as a login service.

[tunnels.web]
addr = "3000"

[tunnels.api]
addr = "8080"
tuzy start --all

Free, with guardrails

tuzy is free for your own development traffic. To protect visitors from phishing, browsers see a short warning page on tunnels of accounts younger than 7 days. Webhooks, curl and API calls never do.