TL;DR — Quick Summary
bacon runs cargo check, clippy, or test in the background and shows diagnostics in a clean TUI. Navigate errors, warnings, and fixes without leaving your editor.
bacon is your Rust diagnostic companion. Background checking with a TUI — errors and warnings, navigable and clear.
Installation
# Cargo
cargo install bacon
Usage
# Run bacon (defaults to cargo check)
bacon
# Start in clippy mode
bacon clippy
# Start in test mode
bacon test
# Specific job
bacon doc
Keybindings (in TUI)
h → cargo check (default)
c → cargo clippy
t → cargo test
d → cargo doc
↑↓ → navigate diagnostics
w → toggle wrapping
s → toggle summary
q → quit
Configuration
# bacon.toml (project root)
[jobs.default]
command = ["cargo", "check", "--all-targets"]
[jobs.clippy]
command = ["cargo", "clippy", "--all-targets"]
[jobs.test]
command = ["cargo", "test"]
[jobs.doc]
command = ["cargo", "doc", "--no-deps"]
[jobs.custom]
command = ["cargo", "build", "--release"]
Summary
- bacon runs cargo commands in background and displays diagnostics in TUI
- Navigate errors/warnings with keyboard shortcuts
- Switch between check, clippy, test, and doc modes
- Custom jobs via bacon.toml configuration
- Perfect pair with cargo-watch for a complete Rust development workflow