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