55 releases (stable)

new 2.8.0 Mar 23, 2023
2.6.1 Feb 22, 2023
2.3.0 Dec 30, 2022
2.2.5 Oct 8, 2022
0.6.0 Nov 15, 2020

#88 in Development tools

Download history 469/week @ 2022-12-06 458/week @ 2022-12-13 197/week @ 2022-12-20 271/week @ 2022-12-27 215/week @ 2023-01-03 273/week @ 2023-01-10 346/week @ 2023-01-17 226/week @ 2023-01-24 190/week @ 2023-01-31 255/week @ 2023-02-07 300/week @ 2023-02-14 1324/week @ 2023-02-21 809/week @ 2023-02-28 897/week @ 2023-03-07 796/week @ 2023-03-14 779/week @ 2023-03-21

3,496 downloads per month
Used in darjeeling


3.5K SLoC


Latest Version Chat on Miaou

bacon is a background rust code checker.

It's designed for minimal interaction so that you can just let it run, alongside your editor, and be notified of warnings, errors, or test failures in your Rust code.



The bacon website is a complete guide.

Below is a short overview.

check the current project


That's how you'll usually launch bacon, because other jobs like test, clippy, doc, your own ones, are just a key away: You'll hit c to see Clippy warnings, t for the tests, d to open the documentation, etc.

check another project

bacon --path ../broot


bacon ../broot

check all targets (tests, examples, benches, etc)

bacon --job check-all

When there's no ambiguity, you may omit the --job part:

bacon check-all

run clippy instead of cargo check

bacon clippy

or, if you want it to run against all targets (tests, examples, benches etc):

bacon clippy-all

run tests

bacon test

bacon test

define your own jobs

First create a bacon.toml file by running

bacon --init

This file already contains some standard jobs. Add your own, for example

command = ["cargo", "check", "--target", "x86_64-pc-windows-gnu", "--color", "always"]


command = ["cargo", "check", "--examples", "--color", "always"]
watch = ["examples"] # src is implicitly included

Don't forget the --color always part: bacon uses style information to recognize warnings and errors.

and run

bacon check-win


bacon check-examples

The bacon.toml file may evolve with the features and settings of your project and should be added to source control.


Bacon is licenced under AGPL-3.0. You're free to use it to compile the Rust projects of your choice, even commercial.

The logo is designed by Peter Varo and licensed under a Creative Commons Attribution-ShareAlike 4.0 International License. license


~1M SLoC