Skip to content
A TUI system monitor written in Rust
Branch: master
Clone or download

Latest commit

cjbassi Merge pull request #46 from zlandau/three_digit_temps
Fix rendering of three digit temperatures
Latest commit d4eabcd Mar 11, 2020


Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Update issue template Jan 25, 2020
assets Add media from gotop Jan 13, 2020
colorschemes Add media from gotop Jan 13, 2020
package-publisher 0.5.1 Feb 17, 2020
src Fix rendering of three digit temperatures Mar 11, 2020
.editorconfig Fix yml indentation Jul 30, 2019
.gitignore Initial commit Jul 21, 2019
.rustfmt.toml Convert spaces to tabs Jul 27, 2019 0.5.1 Feb 17, 2020
Cargo.lock 0.5.1 Feb 17, 2020
Cargo.toml 0.5.1 Feb 17, 2020
LICENSE Initial commit Jul 21, 2019 add Alpine Linux instructions Feb 28, 2020


Minimum rustc version Matrix

Another TUI based system monitor, this time in Rust!

Missing features

  • macOS is missing temperatures, disk io counters, and process commandline
  • Process filtering isn't implemented
  • Mouse usage isn't implemented


Currently works on Linux and macOS with support planned for all major platforms.

Prebuilt binaries

Prebuilt binaries are provided in the releases tab.

Arch Linux

Install ytop, ytop-bin, or ytop-git from the AUR.


brew tap cjbassi/ytop
brew install ytop

Alpine Linux

Available in the testing repository, so you need to be on Alpine Linux Edge.

apk add ytop

From source

cargo install -f --git ytop



  • Quit: q or <C-c>
  • Pause: <Space>
  • Process navigation:
    • k and <Up>: up
    • j and <Down>: down
    • <C-u>: half page up
    • <C-d>: half page down
    • <C-b>: full page up
    • <C-f>: full page down
    • gg and <Home>: jump to top
    • G and <End>: jump to bottom
  • Process actions:
    • <Tab>: 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):
      • <Enter>: accept filter
      • <C-c> and <Escape>: clear filter
  • CPU and Mem graph scaling:
    • h: scale in
    • l: scale out
  • ?: toggles keybind help menu


  • click to select process
  • mouse wheel to scroll through processes


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.

To make a custom colorscheme, copy one of the default ones to ~/.config/ytop/<new-name>.json and load it with ytop -c <new-name>. Colorscheme PRs are welcome!

CLI Options

    ytop [FLAGS] [OPTIONS]

    -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 information

    -c, --colorscheme <colorscheme>    Set a colorscheme [default: default]
    -i, --interface <interface>        The name of the network interface to show in the Net widget. 'all' shows all
                                       interfaces [default: all]
    -I, --interval <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]
You can’t perform that action at this time.