Live TUI
Open ports with no arguments for a live table of listeners that refreshes every
3 seconds.
ports gives developers a live terminal UI and quick CLI commands for
inspecting listeners, spotting the project behind them, identifying the framework,
and acting immediately without hopping across half a dozen system commands on macOS, Linux, or
Windows.
ports opens the interactive TUIports list --json feeds scripts and tooling~/dev/ports
Open ports with no arguments for a live table of listeners that refreshes every
3 seconds.
Walks upward to package.json to identify the project name and detect frameworks
like Next.js, Astro, Vite, Remix, Nuxt, SvelteKit, and Angular.
Shows port, project, framework, PID, memory, uptime, and command, while visually dimming system processes so dev servers stand out.
Kill a listener, open its localhost URL, or jump directly into the detected project folder in your preferred editor from the TUI.
Focus on dev ports, node-like processes, high-memory listeners, long-running services, or a specific project or port instantly.
Use ports list --json to pipe the data into your own scripts, shell workflows,
dashboards, or tooling.
ports
Launch the live terminal interface with refresh, filtering, sorting, search, and keyboard actions.
ports list
Print the listening ports table once and exit.
ports list --json
Return a JSON array of port records with port, pid,
command, projectName, framework,
memoryKB, and uptime.
ports check 3000
See detailed information about a single port, or confirm that it is free.
ports kill 3000
Attempt a graceful stop first, wait 1 second, and then force-stop the process if it refuses to exit.
Move through the current list
Open search and filter by project, command, or port
Cycle filters: all ports, dev ports, node only
Cycle sort modes: port, memory, uptime, project
Kill the selected process
Open http://localhost:PORT in your browser
Open the detected project folder in your preferred editor
Refresh immediately
ports uses lsof and ps to discover
listeners, working directories, memory usage, uptime, and command labels.ports uses PowerShell built-ins like Get-NetTCPConnection
and Get-CimInstance Win32_Process.package.json.
Core implementation and type safety.
CLI argument parsing and subcommands.
React-powered terminal UI.
Color and visual emphasis in terminal output.
Reliable execution of system commands.
Fast TypeScript bundling for the CLI binary.
Windows listener and process discovery via built-in commands.
macOS/Linux listener, cwd, command, memory, and uptime discovery.
npm install
npm run build
npm link
ports
After npm link, you can run ports from anywhere on your machine.
In non-interactive shells it automatically falls back to a static list view.
The e shortcut uses PORTS_EDITOR, then VISUAL, then
EDITOR, and finally code if it is available.