bottom — Beautiful Cross-Platform System Monitor in Rust
bottom (btm) is a customizable, cross-platform graphical system monitor for the terminal. It displays CPU, memory, network, disk, temperature, and process information with interactive charts — a modern alternative to top, htop, and btop.
What it is
bottom (btm) is a terminal-based system monitor written in Rust using Ratatui. It displays real-time CPU, memory, network, disk, temperature, and process information through interactive charts. It works on Linux, macOS, and Windows.
The tool targets developers and system administrators who want a visually rich alternative to top, htop, or btop without leaving the terminal. It supports TOML-based configuration for customizing layouts, colors, and widget placement.
How it saves time or tokens
bottom consolidates the output of multiple monitoring tools into a single dashboard. Instead of switching between top for processes, iotop for disk, and nethogs for network, one command gives you everything. The interactive UI lets you filter, sort, and drill into specific metrics without piping output through grep or awk.
Installation is a single command on every major platform, and the binary is self-contained with no runtime dependencies.
How to use
- Install bottom via your package manager:
brew install bottom,cargo install bottom, orsudo apt install bottom. - Run
btmto launch the interactive dashboard with default layout. - Customize the display with flags like
--rate 500for faster refresh,--basicfor minimal mode, or--default_widget_type procto focus on processes.
Example
# Install and run
brew install bottom
btm
# Custom refresh rate and minimal mode
btm --rate 500 --basic
# Focus on process view
btm --default_widget_type proc
# Use a custom config
btm -C ~/.config/bottom/bottom.toml
Related on TokRepo
- Automation tools -- CLI utilities and developer productivity tools
- DevOps tools -- Infrastructure monitoring and operations
Common pitfalls
- On Debian-based systems the binary is named
btm, but the package isbottom. Runningapt install bottominstalls the correct package. - The default layout shows all widgets. If your terminal window is small, widgets overlap. Use
--basicor a custom TOML layout to reduce widget count. - Temperature sensors require lm-sensors on Linux. Without it, the temperature widget shows no data.
Frequently Asked Questions
bottom provides network, disk, and temperature charts alongside processes, while htop focuses primarily on process management. bottom also supports Windows and macOS natively, whereas htop is Linux and macOS only. The tradeoff is that htop offers deeper process control like sending signals directly.
Yes. bottom reads a TOML configuration file (default at ~/.config/bottom/bottom.toml) where you define which widgets appear, their arrangement, colors, and default sort columns. You can also set per-widget refresh rates and filtering defaults.
Yes. bottom supports Windows, Linux, and macOS. On Windows it uses native APIs for process and system information. Install via scoop, chocolatey, or download the binary from the GitHub releases page.
bottom is compiled to a single static binary with no runtime dependencies. Memory usage is typically under 20 MB. CPU usage depends on the refresh rate but stays minimal at the default 1-second interval.
bottom is primarily an interactive TUI tool. For scripted data collection, you would pair it with tools like sar, vmstat, or prometheus node_exporter. bottom is designed for real-time visual monitoring, not batch data export.
Citations (3)
- bottom GitHub— bottom is a cross-platform terminal system monitor built in Rust
- Ratatui GitHub— Built with Ratatui for terminal UI rendering
- bottom Documentation— Supports TOML configuration for layout customization
Related on TokRepo
Discussion
Related Assets
Conda — Cross-Platform Package and Environment Manager
Install, update, and manage packages and isolated environments for Python, R, C/C++, and hundreds of other languages from a single tool.
Sphinx — Python Documentation Generator
Generate professional documentation from reStructuredText and Markdown with cross-references, API autodoc, and multiple output formats.
Neutralinojs — Lightweight Cross-Platform Desktop Apps
Build desktop applications with HTML, CSS, and JavaScript using a tiny native runtime instead of bundling Chromium.