Documentation for Jetty

Jetty Quickstart

Overview

This guide walks you through exposing your local development server to the internet with a secure public URL. No complex configuration, no firewall changes -- just jetty share and your app is accessible.

Common use cases:

  • Sharing work-in-progress with clients or teammates
  • Testing webhooks from Stripe, GitHub, Twilio, etc.
  • Testing your local site on mobile devices
  • Getting quick feedback on designs

What You'll Need

  • A local application running (or start one in Step 4)
  • 5 minutes of your time
  • Terminal access (Command Line, Terminal.app, iTerm, WSL, etc.)

Step 1: Create Your Account

Head over to https://usejetty.online and sign up for a free account.

Once signed in, your dashboard provides access to tunnels, API tokens, and request monitoring.

Step 2: Install the CLI

Choose your preferred installation method:

Run this one-liner in your terminal:

curl -fsSL https://usejetty.online/install/jetty.sh | bash

This downloads and installs the jetty command to ~/.local/bin.

With cpx (if you already use Composer)

cpx runs Composer packages without installing them into a project — think npx for PHP. Requires PHP 8.3+.

composer global require cpx/cpx
cpx jetty/client share 8000

Arguments pass straight through, so every jetty … command below works as cpx jetty/client …. See Install with cpx for version pinning and how updates differ.

Direct PHAR Download

Download the latest PHAR from the GitHub releases, make it executable, and move it somewhere in your PATH:

chmod +x jetty.phar
sudo mv jetty.phar /usr/local/bin/jetty

Verify the installation:

jetty --version

You should see the Jetty CLI version number.

Step 3: Log in

Authenticate the CLI with your browser:

jetty login

A browser window opens to confirm the connection. Once you approve, the CLI saves an API token automatically -- no manual configuration needed.

The token is tied to your current team. To switch teams later, use the team switcher in the dashboard header.

Step 4: Start a Local App

You need something running locally to share.

Already have a local app running?

Note which port it is on (e.g., 3000, 8000, 8080) and skip to Step 5.

Need something quick to test?

Python SimpleHTTPServer:

cd ~/Desktop
python3 -m http.server 8000

PHP Built-in Server:

cd ~/Desktop
php -S localhost:8000

Node/Express Quick Server:

npx http-server -p 8000

Any of these will serve files from your current directory on port 8000. Open http://localhost:8000 to verify it is running.

Step 5: Share Your App

Run:

jetty share 8000

Replace 8000 with whatever port your app is on.

You will see output like:

 Connected to Jetty Bridge
 Tunnel established

Your tunnel is live at:
  https://clever-panda-abc123.tunnels.usejetty.online

Press Ctrl+C to stop sharing.

Your local server is now accessible at that public URL.

Test it:

  • Copy the URL and open it in a different browser
  • Share it with a friend or teammate
  • Try it on your phone
  • Use it as a webhook endpoint

Everything hitting that public URL is forwarded to your local machine in real time.

Step 6: View Traffic (Optional)

To inspect traffic as it arrives:

  1. Open your dashboard at https://usejetty.online
  2. Click on your active tunnel
  3. Watch requests flow in as they happen

The dashboard displays:

  • Request method, path, and status code
  • Headers and query parameters
  • Response times
  • Full request/response bodies (sanitized for security)

This is particularly useful for debugging webhooks and API integrations.

What's Next?

Now that you have your first tunnel running, explore these features:

Reserve a Subdomain

Get a stable URL like myproject.tunnels.usejetty.online that persists between sessions:

jetty share 8000 --subdomain myproject

Invite Team Members

Add teammates to your account so they can create tunnels under the same organization.

Webhook Testing

Use your Jetty URL as a callback endpoint for:

  • Stripe webhooks (https://your-tunnel.tunnels.usejetty.online/webhooks/stripe)
  • GitHub webhook payloads
  • Twilio callbacks
  • Any service that needs to reach your local dev environment

Custom Domains

For production-like testing, point your own domain to Jetty tunnels. See the custom domains documentation.

CLI Commands

Run jetty --help to see all available commands:

  • jetty config - Manage configuration
  • jetty update - Update the CLI to the latest version
  • jetty share --help - See all sharing options

Need Help?

Send feedback

Found an issue or have a suggestion? Let us know.