Quickstart
Get Portless up and running in under 2 minutes.Installation
1
Install Portless globally
Install via npm:
Portless requires Node.js 20+ and works on macOS and Linux.
2
Run your first app
Navigate to any project and run your dev server through Portless:Or specify a name explicitly:The proxy will auto-start if needed, and your app will be available at:
3
Access your app
Open your browser and visit:That’s it! Your app is now running with a stable, human-readable URL.
First Commands
Run with Auto-Inferred Name
Portless automatically infers your project name frompackage.json, git repo, or directory:
Run with Explicit Name
Specify the name directly:Use Subdomains
Organize related services under the same domain:Add to package.json
Make Portless the default for your project:package.json
npm run dev and get a stable URL.
The proxy auto-starts when you run an app. You can also start it explicitly with
portless proxy start.Working Example
Let’s say you’re building a full-stack app with a Next.js frontend and an Express API.1
Start the API
http://api.myapp.localhost:1355.2
Start the frontend
http://myapp.localhost:1355.3
Configure the frontend to call the API
Update your frontend to call the API by its stable URL:No more hardcoded port numbers. The URL stays the same even if the underlying port changes.
app/api/route.ts
Git Worktree Support
If you use git worktrees, Portless automatically detects them and prepends the branch name as a subdomain:portless run in your package.json once and it just works everywhere - the main checkout uses the plain name, and each worktree gets a unique subdomain. No --force needed, no name collisions.
Managing the Proxy
The proxy starts automatically when you run an app, but you can also control it manually:Environment Variables Injected
When you run an app through Portless, these environment variables are automatically injected:
Most frameworks automatically respect
PORT and HOST. For frameworks that don’t, Portless auto-injects the correct flags.
Static Aliases (Advanced)
If you have a service running outside of Portless (like a Docker container), you can register it manually:Next Steps
Why Portless?
Learn about the problems Portless solves and real-world use cases
Environment Variables
Configure Portless with environment variables and advanced options