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$ 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
brew install nhtera/tap/tuzyirm https://tuzy.dev/install.ps1 | iexscoop bucket add nhtera https://github.com/nhtera/scoop-bucket
scoop install tuzygo install github.com/nhtera/tuzy/cmd/tuzy@latestFirst run
- Log inA code arrives by email. No password, and the token stays in your OS keychain.
tuzy login - Start a tunnelThe first run asks you to pick your permanent name.
tuzy http 3000 - Watch the trafficInspect, replay and copy any request as curl.
open http://127.0.0.1:4040
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 shopInspect 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:4040Dev servers just work
WebSockets, HMR and streaming pass through. If Vite rejects the tunnel host, tuzy switches the Host header for you.
tuzy http 5173Many 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 --allFree, 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.