Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/cjbassi/ytop
A TUI system monitor written in Rust
https://github.com/cjbassi/ytop
Last synced: about 2 months ago
JSON representation
A TUI system monitor written in Rust
- Host: GitHub
- URL: https://github.com/cjbassi/ytop
- Owner: cjbassi
- License: mit
- Archived: true
- Created: 2019-07-20T00:36:33.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2020-08-29T01:04:42.000Z (over 4 years ago)
- Last Synced: 2024-07-31T20:27:14.133Z (4 months ago)
- Language: Rust
- Homepage:
- Size: 683 KB
- Stars: 2,149
- Watchers: 26
- Forks: 84
- Open Issues: 52
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
- awesome-rust-tools - ytop(Archived) - A TUI system monitor written in Rust. (System Monitor)
- awesome-repositories - cjbassi/ytop - A TUI system monitor written in Rust (Rust)
- awesome-alternatives-in-rust - ytop - A TUI system monitor written in Rust (Applications / System tools)
- awesome-ratatui - ytop - TUI system monitor for Linux. (💻 Apps / 👨💻 System Administration)
README
### **NO LONGER MAINTAINED.** For a similar program, check out https://github.com/ClementTsang/bottom.
# ytop
![Minimum rustc version](https://img.shields.io/badge/rustc-1.39+-green.svg)
[![Matrix](https://img.shields.io/badge/matrix-%23ytop-blue.svg)](https://matrix.to/#/#ytop:matrix.org)*Another* TUI based system monitor, this time in Rust!
## Missing features
- macOS is missing disk io counters and process commandline
- Process filtering isn't implemented
- Mouse usage isn't implemented
- FreeBSD is currently unsupported## Installation
ytop currently works on Linux and macOS with support planned for all major platforms.
### Package managers
[![Packaging status](https://repology.org/badge/vertical-allrepos/ytop.svg)](https://repology.org/project/ytop/versions)
#### AUR
ytop is available in three different AUR packages: `ytop`, `ytop-bin`, and `ytop-git`.
#### COPR
ytop is also available in [COPR](https://copr.fedorainfracloud.org/coprs/atim/ytop/):
```bash
sudo dnf copr enable atim/ytop -y
sudo dnf install ytop
```### Homebrew
```bash
brew tap cjbassi/ytop
brew install ytop
```### Prebuilt binaries
Prebuilt binaries are provided in the [releases](https://github.com/cjbassi/ytop/releases) tab.
### From source
```bash
cargo install ytop
```## Usage
### Keybinds
- Quit: `q` or ``
- Pause: ``
- Process navigation:
- `k` and ``: up
- `j` and ``: down
- ``: half page up
- ``: half page down
- ``: full page up
- ``: full page down
- `gg` and ``: jump to top
- `G` and ``: jump to bottom
- Process actions:
- ``: toggle process grouping
- `dd`: kill selected process or process group
- Process sorting:
- `p`: PID/Count
- `n`: Command
- `c`: CPU
- `m`: Mem
- Process filtering:
- `/`: start editing filter
- (while editing):
- ``: accept filter
- `` and ``: clear filter
- CPU and Mem graph scaling:
- `h`: scale in
- `l`: scale out
- `?`: toggles keybind help menu### Mouse
- click to select process
- mouse wheel to scroll through processes### Colorschemes
ytop ships with a few colorschemes which can be set with the `-c` flag followed by the name of one. You can find all the colorschemes in the [colorschemes folder](./colorschemes).
To make a custom colorscheme, copy one of the default ones to `~/.config/ytop/.json` and load it with `ytop -c `. Colorscheme PRs are welcome!
### CLI Options
```
USAGE:
ytop [FLAGS] [OPTIONS]FLAGS:
-a, --average-cpu Show average CPU in the CPU widget
-b, --battery Show Battery widget (overridden by 'minimal' flag)
-f, --fahrenheit Show temperatures in fahrenheit
-h, --help Prints help information
-m, --minimal Only show the CPU, Mem, and Process widgets
-p, --per-cpu Show each CPU in the CPU widget
-s, --statusbar Show a statusbar with the time
-V, --version Prints version informationOPTIONS:
-c, --colorscheme Set a colorscheme [default: default]
-i, --interface The name of the network interface to show in the Net widget. 'all' shows all
interfaces [default: all]
-I, --interval Interval in seconds between updates of the CPU and Mem widgets. Can specify
either a whole number or a fraction with a numerator of 1 [default: 1]
```## Related projects
- [bashtop](https://github.com/aristocratos/bashtop)
- [bottom](https://github.com/ClementTsang/bottom)
- [glances](https://github.com/nicolargo/glances)
- [gotop](https://github.com/cjbassi/gotop)
- [gtop](https://github.com/aksakalli/gtop)
- [htop](https://github.com/hishamhm/htop)
- [vtop](https://github.com/MrRio/vtop)
- [zenith](https://github.com/bvaisvil/zenith)