# bfree Memory stats for humans. `bfree` is a lightweight Rust CLI that provides a clearer, human-oriented view of Linux memory and swap usage. It keeps the speed and simplicity of `free` while improving readability and presenting practical memory semantics by default. ## Features - Human-readable sizes and percentages - Multiple output modes: `compact` (default), `extended`, and `visual` - Structured output: `--json` and `--yaml` (compact by default, extended with `--extended`) - Linux-only, using `/proc/meminfo` - Small dependency surface and fast startup ## Installation ### Cargo `bfree` is published on crates.io: - https://crates.io/crates/bfree ```bash cargo install bfree ``` ### From source ```bash git clone https://github.com/glexposito/bfree cd bfree cargo build --release ./target/release/bfree ``` ### Arch Linux (AUR) Release publishing to AUR is automated by the project release workflow. Package page: https://aur.archlinux.org/packages/bfree ```bash yay -S bfree ``` ## Usage ```bash bfree --help ``` ## Output Semantics `bfree` currently uses the following memory model: - `used = MemTotal - MemAvailable` - `avail = MemAvailable` - `cache = Cached + SReclaimable - Shmem` (effective reclaimable cache) Mode notes: - `compact` (default) shows `used / total` and percentage for memory and swap. - `--extended` and `--visual` also show `cache` and `avail`. - `--json` and `--yaml` export machine-friendly structures for compact/extended modes. ## Project Status Implemented: - Linux `/proc/meminfo` parser with typed error handling - Compact, extended, and visual renderers - Unit tests for memory math and render behavior - CI for pushes and pull requests - Release automation for GitHub releases and AUR updates Planned: - Fedora COPR packaging and publish pipeline - Container/cgroup-aware mode - PSI (Pressure Stall Information) support ## Development ```bash cargo run -- ``` ```bash cargo test --all-targets --all-features ``` ## Contributing Issues and pull requests are welcome. ## License MIT License. See [LICENSE](LICENSE).