PORT PROTO PID USER PROCESS UPTIME MEM COMMAND
3000 TCP 48291 mark node 3h 12m 248 MB next dev
5432 TCP 1203 pg postgres 14d 2h 38 MB /usr/lib/postgresql/16/bin/postgres
6379 TCP 1198 redis redis 14d 2h 12 MB redis-server *:6379
8080 TCP 51002 mark python3 22m 45 MB uvicorn main:app --port 8080
PORT PROTO PID USER PROCESS UPTIME MEM COMMAND
3000 TCP 48291 mark node 3h 12m 248 MB next dev
5432 TCP 1203 pg postgres 14d 2h 38 MB /usr/lib/postgresql/16/bin/postgres
6379 TCP 1198 redis redis 14d 2h 12 MB redis-server *:6379
8080 TCP 51002 mark python3 22m 45 MB uvicorn main:app --port 8080
PORT PROTO PID USER PROCESS UPTIME MEM COMMAND
3000 TCP 48291 mark node 3h 12m 248 MB next dev
5432 TCP 1203 pg postgres 14d 2h 38 MB /usr/lib/postgresql/16/bin/postgres
6379 TCP 1198 redis redis 14d 2h 12 MB redis-server *:6379
8080 TCP 51002 mark python3 22m 45 MB uvicorn main:app --port 8080
PROCESS
node
├── node (worker)
├── node (worker)
└── node (worker)
postgres
└── postgres: autovacuum
PROCESS
node
├── node (worker)
├── node (worker)
└── node (worker)
postgres
└── postgres: autovacuum
PROCESS
node
├── node (worker)
├── node (worker)
└── node (worker)
postgres
└── postgres: autovacuum
$ portview doctor ✓ No port conflicts ✗ postgres is listening on 0.0.0.0:5432 -- consider binding to 127.0.0.1 ✓ No Docker-host conflicts ✓ No stale connections ✓ No high-resource listeners
$ portview doctor ✓ No port conflicts ✗ postgres is listening on 0.0.0.0:5432 -- consider binding to 127.0.0.1 ✓ No Docker-host conflicts ✓ No stale connections ✓ No high-resource listeners
$ portview doctor ✓ No port conflicts ✗ postgres is listening on 0.0.0.0:5432 -- consider binding to 127.0.0.1 ✓ No Docker-host conflicts ✓ No stale connections ✓ No high-resource listeners
portview ssh user@server # scan remote ports
portview ssh user@server watch # full remote TUI
portview ssh user@server doctor # remote diagnostics
portview ssh user@server # scan remote ports
portview ssh user@server watch # full remote TUI
portview ssh user@server doctor # remote diagnostics
portview ssh user@server # scan remote ports
portview ssh user@server watch # full remote TUI
portview ssh user@server doctor # remote diagnostics
curl -fsSL https://raw.githubusercontent.com/mapika/portview/main/install.sh | sh # Linux/macOS
brew install mapika/tap/portview # Homebrew
cargo install portview # Cargo
curl -fsSL https://raw.githubusercontent.com/mapika/portview/main/install.sh | sh # Linux/macOS
brew install mapika/tap/portview # Homebrew
cargo install portview # Cargo
curl -fsSL https://raw.githubusercontent.com/mapika/portview/main/install.sh | sh # Linux/macOS
brew install mapika/tap/portview # Homebrew
cargo install portview # Cargo - Linux: Parses /proc/net/tcp, maps inodes to PIDs via /proc/*/fd/, reads process metadata from /proc/<pid>/status and /proc/<pid>/stat
- macOS: Uses libproc FFI (proc_listpids, proc_pidfdinfo, proc_pidinfo)
- Windows: Uses iphlpapi (GetExtendedTcpTable) and kernel32 (CreateToolhelp32Snapshot, GetProcessTimes)