https://github.com/styfle/vgrok
🪐 Get a secure public URL for a local web server so you can trigger webhooks
https://github.com/styfle/vgrok
Last synced: 4 months ago
JSON representation
🪐 Get a secure public URL for a local web server so you can trigger webhooks
- Host: GitHub
- URL: https://github.com/styfle/vgrok
- Owner: styfle
- Created: 2025-08-03T21:12:17.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2025-09-16T13:30:11.000Z (5 months ago)
- Last Synced: 2025-09-17T22:54:26.689Z (5 months ago)
- Language: JavaScript
- Homepage:
- Size: 30.3 KB
- Stars: 82
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# vgrok
Get a secure public URL for your local web server so you can trigger webhooks, etc.
Built with [Vercel sandbox](https://vercel.com/docs/vercel-sandbox).
> [!IMPORTANT]
> vgrok is designed for quick local development. If you want quick production and preview deployments with secure public urls, [connect your repo to Vercel](https://vercel.com/new) so you can automatically deploy on `git push`.
## Usage
First,Install globally from npm
```sh
npm i -g @styfle/vgrok
```
Next, set environment variables so vgrok knows where to create the sandbox server:
```sh
export VERCEL_TEAM_ID=team_abc
export VERCEL_PROJECT_ID=prj_123
export VERCEL_TOKEN=mytoken
```
Then start the vgrok cli with the port of your local server, for example:
```sh
vgrok 3000
```
This will print a unique url so that your local server on port 3000, like `next dev`, is now accessible to the world.
The default behavior is to shutdown the connection and corresponding sandbox when the vgrok process exits (CTRL+C).
If you plan to run vgrok more frequently and don't want to wait a couple seconds for the sandbox, you can reuse a sandbox, or rather not shutdown the sandbox when the vgrok process exits.
```sh
vgrok 3000 start # create a sandbox and connect the tunnel
# CTRL+C will disconnect the tunnel but not shudown the sandbox
vgrok 3000 stop # shutdown the sandbox
```
## Caveats
- The sandbox has a timeout of 45 min for Hobby teams (need to spawn a new sandbox on timeout)
- The sandbox only runs in the `iad1` region (might feel slow if you're outside US East)
- Does not handle multiple connections to the same sandbox (is this useful, might bring down cost?)
- Logs are really noisy right now (need to hide behind verbose flag)