explaingit

clementtsang/bottom

13,324RustAudience · ops devopsComplexity · 1/5Setup · easy

TLDR

A cross-platform terminal system monitor that shows live graphs of CPU, RAM, network, and disk usage alongside a searchable, sortable process list, like a graphical task manager but running entirely in a command-line window.

Mindmap

mindmap
  root((bottom btm))
    Panels
      CPU graph
      RAM and swap
      Network traffic
      Disk and temp
    Process List
      Search by name
      Tree view
      Kill process
    Platforms
      Linux
      macOS
      Windows
    Install Options
      Cargo
      Homebrew
      System packages
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Monitor CPU and memory usage on a remote Linux server over SSH without needing a graphical desktop environment.

USE CASE 2

Find and kill a runaway process consuming too much RAM directly from the terminal without switching to another tool.

USE CASE 3

Watch real-time network throughput, disk capacity, temperature sensors, and battery level all in one terminal window.

Tech stack

Rust

Getting it running

Difficulty · easy Time to first run · 5min

In plain English

bottom (launched as the command btm) is a terminal program that shows you what your computer is doing in real time. It draws live graphs of CPU usage, RAM and swap consumption, and network data flow, all inside a command-line window without requiring a graphical desktop. You can zoom the time window on each graph in or out to see activity over shorter or longer spans. The process panel lists every program currently running on your system. You can sort by CPU or memory usage, type to search for a process by name, or switch to a tree view that shows which programs are parent and child processes of one another. From the same panel you can send a signal to stop a process that is not responding. Separate panels show disk capacity, temperature sensor readings, and battery charge level. A simpler layout called basic mode strips the interface down to something closer to the classic htop style for those who prefer less visual complexity. You can configure the tool through a config file or command-line options. Settings include the color theme, which panels appear and how they are arranged, how often the data refreshes, and filters to hide entries you don't need. Several built-in themes are included. The tool runs on Linux, macOS, and Windows and is written in Rust. You can install it through Cargo or through Linux package managers including Alpine, Arch, Debian, Ubuntu, Fedora, Nix, and openSUSE. On macOS, Homebrew and MacPorts work. On Windows, Chocolatey, Scoop, and winget are options. The full README is longer than what was shown.

Copy-paste prompts

Prompt 1
Show me the bottom config file settings to hide the disk panel, set the refresh rate to 2 seconds, and switch to the gruvbox color theme.
Prompt 2
How do I install bottom (btm) on Ubuntu 22.04 using a package manager and verify the installed version?
Prompt 3
Write a bottom command-line invocation that filters the process list to show only processes matching 'node' and sorts them by memory usage.
Open on GitHub → Explain another repo

← clementtsang on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.