{"id":31628198,"url":"https://github.com/cod-e-codes/gribble","last_synced_at":"2025-10-06T20:19:48.229Z","repository":{"id":317258517,"uuid":"1066640775","full_name":"Cod-e-Codes/gribble","owner":"Cod-e-Codes","description":"Real-time terminal system monitor with interactive process management, file browsing, and network traffic visualization","archived":false,"fork":false,"pushed_at":"2025-09-29T21:11:01.000Z","size":156,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-09-29T21:37:58.636Z","etag":null,"topics":["cli","cross-platform","file-browser","network-monitoring","process-manager","ratatui","real-time","rust","sparkline-graphs","system-info","system-monitor","terminal","tui"],"latest_commit_sha":null,"homepage":"https://github.com/Cod-e-Codes/gribble","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Cod-e-Codes.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-09-29T19:02:52.000Z","updated_at":"2025-09-29T21:10:36.000Z","dependencies_parsed_at":null,"dependency_job_id":"8992f78e-c28f-40b5-965b-2e0953f1d0c9","html_url":"https://github.com/Cod-e-Codes/gribble","commit_stats":null,"previous_names":["cod-e-codes/gribble"],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/Cod-e-Codes/gribble","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cod-e-Codes%2Fgribble","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cod-e-Codes%2Fgribble/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cod-e-Codes%2Fgribble/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cod-e-Codes%2Fgribble/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Cod-e-Codes","download_url":"https://codeload.github.com/Cod-e-Codes/gribble/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Cod-e-Codes%2Fgribble/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":278672207,"owners_count":26025861,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-06T02:00:05.630Z","response_time":65,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","cross-platform","file-browser","network-monitoring","process-manager","ratatui","real-time","rust","sparkline-graphs","system-info","system-monitor","terminal","tui"],"created_at":"2025-10-06T20:19:45.394Z","updated_at":"2025-10-06T20:19:48.220Z","avatar_url":"https://github.com/Cod-e-Codes.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Gribble System Monitor\n\nA terminal-based system monitor built with Rust and ratatui. Provides real-time system metrics, process management, file browsing, and network traffic visualization.\n\n![Gribble System Monitor Demo](gribble.gif)\n\n*Animated demo showing Gribble's real-time system monitoring capabilities*\n\n## Features\n\n- Real-time CPU and memory monitoring with visual progress bars\n- Interactive process viewer sorted by resource usage\n- File system navigation with keyboard controls and directory history\n- Network traffic visualization with sparkline graphs\n- Multi-interface network monitoring with overflow detection\n- Detail modals for processes, networks, system info, and files\n- Vim-style keyboard navigation\n\n## Installation\n\n### Prerequisites\n\n- Rust 1.70+ (2024 edition)\n- Terminal with Unicode support\n\n### Build from Source\n\n```bash\ngit clone https://github.com/Cod-e-Codes/gribble.git\ncd gribble\ncargo build --release\n```\n\n### Run\n\n```bash\ncargo run\n```\n\n## Usage\n\n### Navigation\n\n- `←→` or `h l` - Switch between panels\n- `↑↓` or `j k` - Navigate within lists, cycle network interfaces\n- `PgUp/PgDn` - Jump by page in lists\n- `Home/End` - Jump to first/last item in lists\n- `Enter` - Open directories in File Explorer\n- `Backspace` - Go up one directory\n- `b` - Go back in directory history\n- `i` - Show detailed information modal\n- `r` - Refresh all data\n- `?` - Show/hide help\n- `q` or `Esc` - Quit\n\n### Panels\n\n1. **System Monitor** - CPU usage, memory statistics, process count, system information\n2. **System Status** - Current time/date, disk usage, network interface statistics, system load\n3. **Process Manager** - Live process list sorted by CPU usage\n4. **File Explorer** - Directory browser with folder/file icons and navigation history\n5. **Network Graph** - Real-time network traffic with interface cycling\n\n### Detail Modals\n\nPress `i` to show detailed information:\n- **Process Manager** - Process details (PID, CPU, memory, status, command)\n- **Network Graph** - Network interface details (totals, current rates)\n- **System panels** - System information (hostname, OS, kernel, hardware)\n- **File Explorer** - File/directory info or disk usage for mount points\n\n## Technical Details\n\n- Built with ratatui for terminal UI rendering\n- Uses sysinfo for cross-platform system metrics\n- Updates system data every 2 seconds\n- Maintains 60-point history for network graphs\n- Cross-platform support (Windows, macOS, Linux)\n- Memory and network formatting with appropriate units\n- Bounds checking and overflow protection\n- String truncation for long names\n- Error recovery for directory navigation\n- Cached data structures for performance\n- Network counter overflow detection\n\n## Requirements\n\n- Modern terminal emulator with Unicode support\n- Minimum terminal size 80x24\n- Read permissions for system information\n\n## Releases\n\nPre-built binaries are available for download on the [Releases page](https://github.com/Cod-e-Codes/gribble/releases).\n\n### Supported Platforms\n\n- **Linux (x86_64)** - `gribble-x86_64-unknown-linux-gnu.tar.gz`\n- **Windows (x64)** - `gribble-x86_64-pc-windows-msvc.zip`\n- **macOS (Intel)** - `gribble-x86_64-apple-darwin.tar.gz`\n- **macOS (Apple Silicon)** - `gribble-aarch64-apple-darwin.tar.gz`\n\n### Installation\n\n**Linux/macOS:**\n```bash\n# Download and extract\ntar -xzf gribble-x86_64-unknown-linux-gnu.tar.gz\n\n# Make executable and move to PATH\nchmod +x gribble-x86_64-unknown-linux-gnu\nsudo mv gribble-x86_64-unknown-linux-gnu /usr/local/bin/gribble\n```\n\n**Windows:**\nExtract the zip file and add the directory to your PATH environment variable.\n\n## Development\n\n### Creating a Release\n\nUse the included release script to create a new version:\n\n```bash\n./release.sh 1.0.0\n```\n\nThis will:\n- Update the version in `Cargo.toml`\n- Create and push a git tag\n- Trigger GitHub Actions to build and publish cross-platform binaries\n\n## License\n\nMIT License","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcod-e-codes%2Fgribble","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcod-e-codes%2Fgribble","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcod-e-codes%2Fgribble/lists"}