Skip to content

sinanfen/port-manager

Repository files navigation

PortManager

PortManager is a Windows-first desktop app for inspecting active localhost ports, matching them to running processes, and taking common local-service actions without bouncing between terminals, Task Manager, and browser tabs.

It is built with Tauri v2, Rust, React, and TypeScript, and is currently focused on a polished MVP for local development workflows on Windows.

What it does

  • Scans active local TCP ports
  • Matches ports to running processes and PIDs
  • Shows best-effort process metadata such as executable path
  • Supports search, filtering, sorting, and manual refresh
  • Lets you open the detected service in a browser
  • Lets you open the process folder or a terminal in the process directory
  • Supports taskkill with confirmation before terminating a process
  • Runs as a desktop utility with a tray icon and tray menu

Screenshots

Main window

PortManager overview

Row actions menu

PortManager actions menu

Kill confirmation

PortManager kill confirmation

Installation

Option 0: Download from GitHub Releases

Once a tagged release is published, Windows users can download the installer directly from:

https://github.com/sinanfen/port-manager/releases

The GitHub release will include an .msi installer asset for direct installation on Windows.

Option 1: Run from source

PortManager is currently easiest to use by running it from source.

Requirements

  • Windows 10 or Windows 11
  • Node.js 20+ with npm
  • Rust
  • Microsoft Visual Studio Build Tools with C++ support for Tauri/Rust builds
  • WebView2 Runtime installed on Windows

Steps

  1. Clone the repository:
git clone https://github.com/your-username/port-manager.git
cd port-manager
  1. Install frontend dependencies:
npm install
  1. Start the desktop app in development mode:
npm run tauri:dev

Option 2: Build a local executable

If you want a local production build on your own machine:

npm install
npm run tauri:build

The built Windows executable will be created at:

src-tauri/target/release/port-manager.exe

Development

Useful commands:

npm run typecheck
npm run lint
npm run test:run
cargo test --manifest-path src-tauri/Cargo.toml

Current status

PortManager is already runnable and manually testable, but it is still an in-progress MVP.

Current focus:

  • Windows-first support
  • Local desktop workflow
  • Core port discovery and process actions

Still planned:

  • settings screen
  • startup options
  • CLI support
  • deeper WSL and Docker support
  • broader release polish

Publishing a release

This repository is now configured to publish a Windows MSI to GitHub Releases via GitHub Actions.

Release flow:

  1. Make sure the app version is updated consistently in:
    • package.json
    • src-tauri/Cargo.toml
    • src-tauri/tauri.conf.json
  2. Commit and push your changes to GitHub.
  3. Create and push a version tag such as:
git tag v0.1.0
git push origin v0.1.0
  1. GitHub Actions will build the app on Windows, create the MSI, and publish it under the repository’s Releases section.

Notes

  • Windows is the primary target right now.
  • Process metadata is best-effort; some protected processes may expose only partial information.
  • Some actions may require elevated permissions depending on the target process.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors