A window onto your local dev servers — see, open, start, and kill them, grouped by project.
Users
3
−2 in 30 days
Rating
0.0 / 5
unchanged in 30 days
Ratings
0
0 in 30 days
Store rank
#350K
#268K among extensions
Version
2.3.0
updated 17 Aug 2026
Users
monthly, 2 months
Latest, 15 Oct 2026:3 usersMove the mouse over the chart for any month
Ratings count
monthly, 2 months
Latest, 15 Oct 2026:0 ratingsMove the mouse over the chart for any month
The Chrome Web Store rounds user counts down to the leading digit, so the user line moves in steps. The ratings count is exact and is the better signal of real adoption.
About PortHole
Stop guessing what's running on localhost.
If you juggle several projects at once — a Vite frontend here, an Astro site
there, three Supabase stacks in Docker — you lose track of which ports are
taken, which server belongs to which project, and what's still eating memory
from yesterday. PortHole puts all of it in one popup.
WHAT YOU GET
• Everything grouped by project. PortHole works out which project each server
belongs to from its working directory, and reads Docker container names to
match Supabase services to the right stack — so you finally know which
Supabase Studio is which.
• One click to open. Click any server card to open it in a new tab. Ports that
aren't web servers (Postgres, Redis) are listed but not clickable.
• Start, restart and stop. Register a project once with its folder and start
command, and PortHole can launch it, restart it, or shut it down — app and
Supabase stack together — without touching a terminal.
• Pinned ports. Give each project a fixed port in the registry and it gets that
port every time. If something else has squatted on it, PortHole warns you and
offers to free the port and start your project in one click.
• Health at a glance. A green dot means the server is answering. Amber means the
port is open but nothing is responding — the hung dev server you'd otherwise
spend ten minutes debugging.
• Logs without hunting. Tail the output of anything PortHole started, right in
the popup.
• Copy what you need. One click copies a server's URL, or the full Postgres
connection string for a Supabase database.
• Stop everything. One button shuts down every dev server and Supabase stack
when you're done for the day.
PRIVACY
PortHole makes no network requests, collects no data, and has no analytics. It
cannot read your tabs, history or page content — it doesn't request those
permissions. Everything happens on your own machine.
REQUIRES A ONE-TIME LOCAL SETUP
A browser extension cannot see which ports are open on your computer — that's a
security boundary Chrome enforces. PortHole therefore uses a small open-source
companion program (Node.js, zero dependencies). After installing the extension,
the popup shows the single command to run, with your extension ID filled in:
npx porthole-helper install <extension-id>
That's the whole setup. Chrome starts the companion only when you open the
popup, and it exits straight after answering. Nothing runs in the background.
Currently supports macOS (Linux is included but untested). Requires Node.js.
Open source, MIT licensed: https://github.com/LucDesvaux/porthole