bfree 0.1.1

A better free, human by default
Documentation
# bfree โœจ

A better `free`, human by default.
Inspired by tools like `btop`, `bfree` gives you memory and swap stats in a clean one-line summary.

The command nobody asked for โ€” but your RAM deserves it. ๐Ÿš€

## Why bfree?

The traditional `free` command is powerful but outdated in UX and modern workload awareness.

### Problems with `free`

- โŒ Not human-readable by default (KB output)
- โŒ Confusing memory semantics (`used` vs `free` vs `buff/cache`)
- โŒ No percentages
- โŒ No visual signal
- โŒ Not container/cgroup aware
- โŒ No context about reclaimable memory
- โŒ No PSI (pressure stall info)
- โŒ Misleading inside Kubernetes / Docker / Podman

Modern systems deserve better visibility.

## Highlights

- ๐Ÿงผ **Clean by design** โ€” minimal, focused, and pleasant to read
- ๐Ÿ“Š **Human-first output** โ€” sizes + percentages in one line
- ๐Ÿง  **Useful memory semantics** โ€” includes effective reclaimable cache
- โšก **Snappy** โ€” lightweight Rust CLI

## Status

- โœ… Linux `/proc/meminfo` parser
- โœ… One-line memory + swap output
- โœ… Percentages for used/cache/available/swap
- โœ… Unit tests for memory math
- ๐Ÿ”œ Container/cgroup-aware mode
- ๐Ÿ”œ PSI (pressure stall information)
- ๐Ÿ”œ Optional visual signal (bars/colors)

## Current Semantics

- `used` = `MemTotal - MemAvailable`
- `cache` = `Cached + SReclaimable - Shmem` (effective reclaimable cache)
- `avail` = `MemAvailable`

## Run

```bash
cargo run --
```

## Contributing

Ideas, feedback, and PRs are welcome. The project is young โ€” jump in early and shape it.

---

Made with โค๏ธ for the terminal.