4 releases
Uses new Rust 2024
| 0.1.4 | Feb 23, 2026 |
|---|---|
| 0.1.3 | Feb 23, 2026 |
| 0.1.2 | Feb 22, 2026 |
| 0.1.0 | Feb 22, 2026 |
#744 in Unix APIs
150KB
1K
SLoC
portit
A minimal Rust TUI for inspecting listening TCP ports and killing processes.
~168KB release binary. Single dependency (crossterm). No runtime overhead.
Features
- List all listening TCP ports with PID, process name, protocol, address, and port
- Real-time filtering by process name or port number (case-insensitive)
- Kill processes with SIGTERM or SIGKILL with confirmation
- Vim-style navigation (j/k or arrow keys)
- Wrapping selection and scrolling for long lists
- Inline display without taking over the full terminal
- Tiny release binary with aggressive optimization
- Clean terminal restoration on exit
Installation
Homebrew
brew install odysa/tap/portit
Using install script
curl -fsSL https://raw.githubusercontent.com/odysa/portit/main/install.sh | sh
Using cargo
cargo install portit
Build from source
git clone https://github.com/odysa/portit.git
cd portit
cargo build --release
Usage
Keybindings
| Key | Action |
|---|---|
j / k or arrow keys |
Move selection up/down |
Enter |
Open action menu |
/ |
Filter by name or port |
K |
Kill selected process (SIGTERM) |
F |
Force kill selected process (SIGKILL) |
r |
Refresh port list |
q / Esc |
Quit |
The action menu also supports j/k for navigation, Enter to select, and Esc to close.
Requirements
- macOS or Linux (x86_64 or aarch64)
lsofandkillin PATH
License
MIT. See LICENSE for details.
Dependencies
~4–16MB
~190K SLoC