Internet
↓
ngrok Public URL (HTTPS)
↓ (secure tunnel)
ngrok Client (local machine)
↓
Local App (localhost:8080)
Command:
ngrok http 8080
# Result https://abc123.ngrok.io → http://localhost:8080
Internet
↓
Cloudflare Edge (HTTPS)
↓
Encrypted Tunnel
↓
cloudflared (local agent)
↓
Local App (localhost:8080)
Quick tunnel:
winget install Cloudflare.cloudflared
cloudflared tunnel --url http://localhost:3000