{"id":13477962,"url":"https://github.com/Canop/bacon","last_synced_at":"2025-03-27T07:30:36.040Z","repository":{"id":38744067,"uuid":"308327979","full_name":"Canop/bacon","owner":"Canop","description":"background code checker","archived":false,"fork":false,"pushed_at":"2025-03-20T05:42:58.000Z","size":3217,"stargazers_count":2370,"open_issues_count":44,"forks_count":91,"subscribers_count":12,"default_branch":"main","last_synced_at":"2025-03-25T20:08:53.980Z","etag":null,"topics":["cargo","check","compilation","hacktoberfest","rust","terminal"],"latest_commit_sha":null,"homepage":"https://dystroy.org/bacon","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Canop.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":["Canop"]}},"created_at":"2020-10-29T12:53:20.000Z","updated_at":"2025-03-25T09:38:51.000Z","dependencies_parsed_at":"2024-03-04T16:41:22.392Z","dependency_job_id":"64a3c361-1a85-47cf-acdd-6bb767e3f9b9","html_url":"https://github.com/Canop/bacon","commit_stats":{"total_commits":223,"total_committers":18,"mean_commits":12.38888888888889,"dds":0.09865470852017932,"last_synced_commit":"25796255fc2fda46df71e2e3aff8e69387421e08"},"previous_names":[],"tags_count":62,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Canop%2Fbacon","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Canop%2Fbacon/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Canop%2Fbacon/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Canop%2Fbacon/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Canop","download_url":"https://codeload.github.com/Canop/bacon/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245802138,"owners_count":20674593,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cargo","check","compilation","hacktoberfest","rust","terminal"],"created_at":"2024-07-31T16:01:50.527Z","updated_at":"2025-03-27T07:30:36.033Z","avatar_url":"https://github.com/Canop.png","language":"Rust","readme":"![bacon][logo]\n\n[logo]: img/logo-text.png?raw=true \"bacon\"\n\n[![Latest Version][s1]][l1] [![site][s4]][l4] [![Chat on Miaou][s2]][l2] [![License: AGPL v3][s3]][l3]\n\n[s1]: https://img.shields.io/crates/v/bacon.svg\n[l1]: https://crates.io/crates/bacon\n\n[s2]: https://dystroy.org/chat-shield.svg\n[l2]: https://miaou.dystroy.org/4683?bacon\n\n[s3]: https://img.shields.io/badge/License-AGPL_v3-blue.svg\n[l3]: https://www.gnu.org/licenses/agpl-3.0\n\n[s4]: https://dystroy.org/dystroy-doc-pink-shield.svg\n[l4]: https://dystroy.org/bacon\n\n**bacon** is a background code checker.\n\nIt'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.\n\n![screenshot](doc/screenshot.png)\n\n# Documentation\n\nThe **[bacon website](https://dystroy.org/bacon)** is a complete guide.\n\nBelow is only a short overview.\n\n## install\n\n    cargo install --locked bacon\n\nRun this command too if you want to update bacon. Configuration has always been retro-compatible so you won't lose anything.\n\nSome features are disabled by default. You may enable them with\n\n    cargo install --features \"clipboard sound\"\n\n## check the current project\n\n    bacon\n\nThat'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 \u003ckbd\u003ec\u003c/kbd\u003e to see Clippy warnings, \u003ckbd\u003et\u003c/kbd\u003e for the tests, \u003ckbd\u003ed\u003c/kbd\u003e to open the documentation, etc.\n\n\n## check another project\n\n    bacon --path ../broot\n\nor\n\n    bacon ../broot\n\n## check all targets (tests, examples, benches, etc)\n\n    bacon --job check-all\n\nWhen there's no ambiguity, you may omit the `--job` part:\n\n    bacon check-all\n\n## run clippy instead of cargo check\n\n    bacon clippy\n\nThis will run against all targets like `check-all` does.\n\n## run tests\n\n    bacon test\n\nor `bacon nextest` if you're a nextest user.\n\n![bacon test](doc/test.png)\n\n\nWhen there's a failure, hit \u003ckbd\u003ef\u003c/kbd\u003e to restrict the job to the failing test.\nHit \u003ckbd\u003eesc\u003c/kbd\u003e to get back to all tests.\n\n## define your own jobs\n\nFirst create a `bacon.toml` file by running\n\n    bacon --init\n\nThis file already contains some standard jobs. Add your own, for example\n\n```toml\n[jobs.check-win]\ncommand = [\"cargo\", \"check\", \"--target\", \"x86_64-pc-windows-gnu\"]\n```\n\nor\n\n```toml\n[jobs.check-examples]\ncommand = [\"cargo\", \"check\", \"--examples\"]\nwatch = [\"examples\"] # src is implicitly included\n```\n\nand run\n\n    bacon check-win\n\nor\n\n    bacon check-examples\n\nThe `bacon.toml` file may evolve with the features and settings of your project and should be added to source control.\n\n## Optional features\n\nSome bacon features can be disabled or enabled at compilation:\n\n* `\"clipboard\"` - disabled by default : necessary for the `copy-unstyled-output` internal\n* `\"sound\"` - disabled by default : necessary for the `play-sound` internal\n\n## Licences\n\nBacon is licenced under [AGPL-3.0](https://www.gnu.org/licenses/agpl-3.0.en.html).\nYou're free to use it to compile the Rust projects of your choice, even commercial.\n\nThe logo is designed by [Peter Varo][pv] and licensed under a\n[Creative Commons Attribution-ShareAlike 4.0 International License][cc-lic].\n[![license][cc-img]][cc-lic]\n\n[pv]: https://petervaro.com\n[cc-lic]: https://creativecommons.org/licenses/by-sa/4.0\n[cc-img]: https://i.creativecommons.org/l/by-sa/4.0/80x15.png\n","funding_links":["https://github.com/sponsors/Canop"],"categories":["Development tools","开发工具 Development tools","Rust"],"sub_categories":["Web Servers","Web服务器 Web Servers","Workflow Automation"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FCanop%2Fbacon","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FCanop%2Fbacon","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FCanop%2Fbacon/lists"}