Your first route
This is the local-only routeup flow. It does not need an account, token, public server, or network access.
1. Run setup once
Section titled “1. Run setup once”routeup setupSetup creates a local certificate authority, adds it to your OS trust store, lets routeup answer on port 443, and starts the background agent. You may be asked for Touch ID or your password once.
Enter none at the optional public-server prompt when you only want local routes.
2. Start any local app
Section titled “2. Start any local app”Use whatever you already run in development. If you just want something to test against, start a throwaway static server on port 8080:
python3 -m http.server 8080Your real dev server works the same way: Vite, Next.js, Rails, a Go service, or anything else that listens on a local port.
3. Serve it through routeup
Section titled “3. Serve it through routeup”routeup serve example-app --port 8080routeup prints the route it claimed and the targets it is proxying to:
route: example-applocal: https://example-app.localhosttargets: / http://localhost:8080
requests: livepress Ctrl-C to stopNew completed requests appear below this preamble. Use -d/--detach when you
want the route owner to continue in the background, then stop it with
routeup stop example-app.
Open:
https://example-app.localhostThe URL stays stable when the app moves to another port; update the target port
when you restart routeup serve.
Useful checks
Section titled “Useful checks”List active routes:
routeup routesCheck setup, trust, port binding, and agent health:
routeup doctor