Grepedia
PO

Ports

A native macOS menu bar app that monitors all dev servers running on localhost, providing real-time CPU, memory, and process control for your local projects.

Score0
About

Ports is a dedicated, native macOS utility designed to provide developers with complete visibility into all development servers currently running on their local machine. Developed by BigLittleApps, this menu bar application serves as a central hub for monitoring active processes, allowing users to efficiently track their localhost environment without needing to dig through terminal commands or activity monitors. By offering a streamlined view directly from the macOS menu bar, Ports helps developers maintain a cleaner workspace and manage their local services with minimal friction. The application is built specifically for macOS 14 and newer, offering full support for both Apple Silicon and Intel-based Macs. It automatically identifies and categorizes dev servers from common frameworks and languages, including Node.js, Vite, Next.js, Python, Ruby on Rails, Go, Bun, and Deno, providing a tailored experience for modern software development stacks.

The functionality of Ports centers on its ability to scan for and display every listening port on the user's localhost. It translates low-level system process data into a readable, actionable list, presenting critical diagnostic information in a compact, organized format. Beyond simply listing active ports, the tool provides real-time telemetry, allowing developers to keep an eye on resource consumption and uptime directly from their menu bar. The application is designed to be lightweight and unobtrusive, ensuring that developers can access vital information instantly whenever they need to debug, restart, or terminate a specific development process during their coding workflow.

Some of the key features are:

  • Smart Filtering: Automatically detects and lists dev servers for popular frameworks like Vite, Next.js, and Rails.
  • Real-time Monitoring: Displays live uptime, CPU usage, memory consumption, and an energy usage badge for every process.
  • Process Control: Allows users to jump directly to the owning terminal or terminate processes with a single click.
  • Browser Integration: Includes a button to open local servers directly in the default browser with automatic HTTP or HTTPS detection.
  • Keyboard Navigation: Provides hotkeys for navigating ports, opening servers, opening terminals, and killing processes efficiently.
  • Kill All Capability: Offers a bulk termination feature to clean up all visible development ports instantly.
  • Customizable Shortcuts: Allows users to set a global keyboard shortcut to toggle the menu from anywhere in the OS.
  • Configurable Settings: Includes options to launch at login, adjust refresh intervals, and toggle whether to show every port or just active dev servers.

Operating Ports is straightforward and intended for seamless integration into daily developer workflows. Once installed, the application resides in the menu bar, waiting to be accessed either by a mouse click or a user-defined global keyboard shortcut. When opened, the app presents a dropdown list of all active local dev servers. Users can hover over individual rows to see more details or trigger specific actions, such as jumping to a project's terminal or ending a process. The settings menu allows for personalization, letting users refine how the app reports data, how often it refreshes its lists, and how it handles window management after executing a command. By focusing on low-latency interactions, the app ensures that developers spend less time managing background processes and more time writing code.

Some common use cases include:

  • Environment Cleanup: Quickly identifying and terminating zombie processes or hung development servers that are blocking ports.
  • Resource Management: Monitoring the CPU and memory footprint of multiple concurrent dev environments during full-stack development.
  • Quick Access: Jumping directly to the correct terminal window for a specific port when switching between multiple project contexts.
  • Testing Integration: Quickly launching a browser tab to view a running project without manually typing localhost URLs.
  • Energy Tracking: Identifying high-energy processes that may be affecting system performance or laptop battery life during extended coding sessions.