Help us shape the future of Go! Take the 2026 Go Developer Survey

yonder

command module
v0.1.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 23, 2026 License: MIT Imports: 18 Imported by: 0

README

yonder

your site, over yonder

Open the site running on your localhost from your phone, your iPad, or a friend's laptop on the same Wi-Fi. One command, one QR code, nothing to install on the other device.

Install

go install github.com/dpologdvinity/yonder@latest

Or download a binary for Linux, macOS or Windows from Releases.

Usage

yonder <port>             share localhost:<port> on the LAN
yonder <port> --listen N  use proxy port N
yonder --version
$ yonder 3000
yonder: sharing localhost:3000

  http://192.168.1.20:13000
  <QR code>

Anyone on this network can open this URL. There is no access control yet.

Scan the QR code or type the URL on the other device. Each request shows up as one log line.

yonder runs a small proxy in front of your dev server, so you don't need to change its config:

  • It works with servers that only listen on 127.0.0.1 or ::1.
  • It rewrites the Host and Origin headers, so servers that check them (Vite, webpack, Next.js) accept the request.
  • Hot reload keeps working: WebSockets and server-sent events pass through.
  • The proxy port is your port + 10000, so the URL stays the same across restarts. Just refresh the page.

Is it safe?

Anyone on the same network can open the URL while yonder runs. There is no password or token yet. Use it on networks you trust, not on public Wi-Fi, and stop it with Ctrl-C when you're done. Only the one port you name is shared.

Known limitations

  • Your app's own code may hardcode localhost. A frontend calling an API at http://localhost:8080 fails on the phone, because there localhost is the phone. Use relative API URLs or your dev server's proxy.
  • Response bodies are not rewritten. Absolute http://localhost:<port> links inside HTML or JS stay broken.
  • http://localhost counts as a secure context; http://192.168.x.x does not. Service workers, camera, geolocation, clipboard and crypto.subtle won't work on the other device yet.
  • Guest, campus and café networks often block device-to-device traffic. If the other device can't connect, try a phone hotspot.

Firewalls

The first time yonder listens for connections, your OS may block or ask:

  • Windows: allow yonder.exe in the Windows Defender Firewall prompt.
  • macOS: allow incoming connections when the application firewall asks.
  • WSL (mirrored mode): the Hyper-V firewall may block inbound traffic. See Microsoft's WSL networking docs.

WSL

In WSL's default NAT mode, other devices can't reach WSL at all; yonder prints a hint when it detects this. Either set networkingMode=mirrored under [wsl2] in %UserProfile%\.wslconfig and run wsl --shutdown, or run the Windows build, yonder.exe.

License

MIT

Documentation

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL