#system-monitoring #system-metrics #monitoring

stomata-core

Core stomata library for systems metric collection and visualization via the stomata-cli

5 releases

Uses new Rust 2024

0.1.5 Nov 24, 2025
0.1.4 Nov 19, 2025
0.1.3 Nov 16, 2025
0.1.2 Nov 7, 2025
0.1.1 Oct 28, 2025

#10 in #system-monitoring


Used in stomata-cli

MIT/Apache

17KB
327 lines

Stomata

A lightweight real-time terminal system monitor built with Rust

Track machine resource utilization, processes and performance in real-time as you run from your terminal

Crates.io GitHub stars License

Demo

https://github.com/user-attachments/assets/0dbe7dcc-a76e-4dd1-ae8f-233ebdf8e4e0

Stomata tracking memory, swap, CPU, and per-process resource usage in real-time


Why Stomata?

I repeateadly faced out-of-memory issues while working with very large Rust projects. Other tools showed me the metrics, but not the culprit and in a very clustered UI.

Stomata gives:

  • System-wide metrics: Memory, Swap, CPU, Disk usage in one place. You can immediately know when the load kicks in
  • Process level details: See exactly which process is using how much of machine resources
  • Single Process inspection: Drill into a single process to check its CPU utilizations, memory use, disk read/write bytes in real-time
  • Lightweight: Minimal footprints

Features

System Monitoring

  • Real-time memory, swap, CPU, disk usage gauges
  • CPU utilization tracking
  • OS and system information

Process Monitoring

  • Live process list with resource consumption
  • Per-process CPU and memory usage
  • Per process meta info about running time, start time, working directory and more

Process Inspection

  • Select any process for detailed view

  • Current working directory (CWD)

  • Disk read/write bytes with sparkline graphs

  • Memory and CPU usage over time

  • Designed as a workspace: includes a reusable library (Stomata-core) and a CLI (Stomata-cli)


Installation

Via crates.io:

cargo install stomata-cli

Using the core library in your project:

cargo add stomata-core

Usage

# Run with default settings
stomata

# Custom refresh interval (milliseconds)
stomata --interval 1000

Building from Source

Requires Rust 1.90.0+

git clone https://github.com/aditya172926/stomata-cli.git
cd stomata-cli

# Debug build
cargo build
# or
make build

# Release build
make release

Project Structure

Stomata is organized as a Cargo workspace:

  • stomata-cli — The terminal application
  • stomata-core — Reusable library for metrics collection

Contributing

Contributions are welcome! Please read our Contributing Guidelines before submitting a pull request.

License

Licensed under either of

Dependencies

~6.5MB
~110K SLoC