# Public URLs

Every app gets a Wi-Fi URL when it deploys. One command adds a public HTTPS URL, with no port forwarding or router setup.

## Three kinds of URL

- **Local URL**: http://192.168.0.112:3000, Your Wi-Fi only
- **Quick link**: https://shy-river-42.trycloudflare.com, Anywhere, but it can change
- **Your domain**: https://api.example.com, Anywhere, and it never changes

## Get a quick link

```sh
$ dukoi expose
Asking Cloudflare for a public URL…
✓ hono-api is public

  Public  https://shy-river-42.trycloudflare.com
```

It takes a few seconds and needs no account. The phone opens an outbound tunnel to Cloudflare, so it works behind CGNAT and home routers that block incoming connections.

Quick links are good for demos, testing and webhooks you can update. The URL changes whenever the tunnel restarts, and `dukoi ps` always shows the current one.

## Turn it off

```sh
$ dukoi expose --off
```

The app goes back to Wi-Fi only. You can also change it on the phone: open the app and tap the edit icon next to its public link.

> Want a URL that never changes?
> 
> Put the app on your own domain. See [Custom domains](/docs/custom-domains.md).
