Launching today

Portlivo
Every local dev server on your Mac, in the menu bar
34 followers
Every local dev server on your Mac, in the menu bar
34 followers
Portlivo shows every dev server and port running on your Mac: which project it's from, the command, uptime and whether it's answering. Open, restart, kill, tail logs or share any of them in one click. Native, no account, one-time price.








Free Options
Launch Team / Built With

Dropbox SignSimple, secure eSignatures for the way your team works.
Promoted



The project name next to each port looks more useful than another list of PIDs. Nice to have logs there too, especially when several apps are running.
Thanks! @oleksii_sekundant That's exactly why I built it: "node, PID 48213" never told me which project was still running.
Logs are in the inspector: select a server and it tails its output. That works for anything started from Portlivo (including a whole stack from a project folder), docker logs for containers, and laravel.log for Laravel apps. A server you started in your own terminal tab keeps its output in that tab, so for those Portlivo shows the project, command and health, and it jumps you to the terminal or editor it came from.
What do you usually have running at the same time?
right now i just lsof -i :3000 and kill -9 whatever shows up, happens almost daily when a hot reload hangs
"Port already in use" is a daily thing for me with a few Vite apps and a Nest backend running at once. Sharing a server to the phone by QR is the part I'd use most for mobile testing. Does it pick up servers started inside Docker too, or only native processes?
@denys_shapochkin
Both. Containers with published ports (docker run -p or ports: in Compose) show up by container name and image, not as docker-proxy, next to your native Vite and Nest processes. Restart and Stop act on the container itself, and docker logs stream into the inspector. That works with Docker Desktop and OrbStack.
One tip for the QR code: Vite only listens on localhost by default, so start it with vite --host (or server.host: true) or your phone can't reach it. Portlivo puts a network badge on servers your phone can reach, so you can see that at a glance. Nest listens on every interface by default, so it's fine as is, but have your Vite app call the API by your Mac's LAN IP rather than localhost when testing on the phone.
Happy to hear how it goes with your setup!