Metadata-Version: 2.4
Name: gruyere
Version: 0.1.0
Summary: A tiny program for viewing and killing processes on ports
Project-URL: Homepage, https://github.com/savannahostrowski/gruyere
Project-URL: Repository, https://github.com/savannahostrowski/gruyere
Project-URL: Issues, https://github.com/savannahostrowski/gruyere/issues
Author-email: Savannah Ostrowski <savannah@python.org>
License: MIT
License-File: LICENSE
Keywords: ports,processes,tui
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: MacOS
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: POSIX :: Linux
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: System :: Monitoring
Classifier: Topic :: Utilities
Requires-Python: >=3.13
Requires-Dist: psutil>=7.1.2
Requires-Dist: readchar>=4.2.1
Requires-Dist: rich>=14.2.0
Requires-Dist: typer>=0.15.1
Description-Content-Type: text/markdown

# Gruyère 🧀

A tiny, beautiful TUI program for viewing and killing processes listening on ports.

![Gruyère Screenshot](https://raw.githubusercontent.com/savannahostrowski/gruyere/main/gruyere.gif)

**Install:**
```bash
uv tool install gruyere
# or
pipx install gruyere
# or
pip install gruyere
```

**Usage:**
```bash
gruyere                    # Show processes with clean app names
gruyere --details          # Show full command details
gruyere --port 8000        # Filter by specific port
gruyere --user username    # Filter by specific user
```

### Controls

- `↑`/`k`: Move up
- `↓`/`j`: Move down
- `/`: Filter processes
- `ENTER`: Kill selected process
- `q`: Quit

## Features

- 🎨 Beautiful gradient UI with rich colors
- 🔍 Filter processes by command name, port, or user
- 📱 Clean app names by default, with optional `--details` flag to show full command strings
- ⌨️ Vim-style navigation (j/k) or arrow keys
- 💀 Kill processes with confirmation dialog
- 📄 Pagination for many processes

## Requirements

- macOS, Linux, or Windows (very experimental)
- Python 3.13+

**Note:** On macOS, the program will run without elevated privileges but will only show processes owned by the current user. For system-wide process information, run with `sudo`. On Windows, you may need to run as Administrator to see all processes.

## License

MIT
