Things on this page are fragmentary and immature notes/thoughts of the author. Please read with your own judgement!
Online Tools¶
Rust Dev Tools¶
cargo-show-asm¶
cargo-show-asm is a cargo subcommand showing the assembly, LLVM-IR and MIR generated for Rust code.
cargo-px¶
cargo-px is a cargo subcommand that extends cargo’s capabilities when it comes to code generation.
cargo-wizard¶
cargo-wizard is a Cargo subcommand for configuring Cargo projects for best performance.
cargo-binstall¶
cargo-binstall provides a low-complexity mechanism for installing rust binaries as an alternative to building from source (via cargo install) or manually downloading packages. This is intended to work with existing CI artifacts and infrastructure, and with minimal overhead for package maintainers.
cargo-info¶
cargo-info extends cargo to query crates.io registry for crates details.
cargo-careful¶
cargo-careful execute Rust code carefully, with extra checking along the way.
cargo-semver-checks¶
cargo-semver-checks scans your Rust crate for semver violations.
cargo-udeps¶
cargo-udeps finds unused dependencies in Cargo.toml.
Deps.rs¶
Deps.rs keeps your dependencies up-to-date.
cargo-sweep¶
cargo-sweep is a cargo subcommand for cleaning up unused build files generated by Cargo.
marker¶
marker is a stable linting interface for Rust. Let’s make custom lints a reality.
https://
rustfmt - Format Code¶
rustfmt
is Rust’s code (official) formatting tool.
If rustfmt has been installed (using rustup component add rustfmt),
you can run the following command to format code in a Rust project.
cargo fmt Notice that cargo fmt might have issues with Rust code
that are nested in many layers
and there’s no good configuration to make it work.
It is suggested that you do not nest Rust code too deeply.
This not only make things easier for cargo fmt
but also makes your Rust code cleaner and more readable.
rust-clippy¶
rust-clippy is a bunch of lints to catch common mistakes and improve your Rust code.
cargo-nextest¶
cargo-nextest is a next-generation test runner for Rust.
cargo-edit¶
cargo-edit is a utility for managing cargo dependencies from the command line. It is a temporary solution before the issue Add cargo-add (from cargo-edit) to cargo proper is resolved.
:::bash
cargo install cargo-editcargo-crev¶
cargo-crev is a cryptographically verifiable code review system for the cargo (Rust) package manager. It is an implementation of Crev as a command line tool integrated with cargo, which helps Rust users evaluate the quality and trustworthiness of their package dependencies.
cargo-audit¶
cargo-audit is a Cargo subcommand which audits Cargo.lock files for crates with security vulnerabilities. It also supports CICD tools such as GitHub Actions (via audit-check) and Travis CI.
rust-crate-audits¶
Google uses cargo-vet to ensure third-party Rust dependencies have been audited by Googlers or other trusted entities. This repository automatically aggregates Google’s audits from various repositories to make them easily reusable by others.
cargo-vet¶
cargo-vet is a tool to help projects ensure that third-party Rust dependencies have been audited by a trusted entity. It strives to be lightweight and easy to integrate.
cargo-generate¶
cargo-generate is a developer tool to help you get up and running quickly with a new Rust project by leveraging a pre-existing git repository as a template.
cargo-dist¶
cargo-dist is cargo build but for building final distributable artifacts and uploading them to an archive.
cargo-shuttle¶
Shuttle is a Rust-native cloud development platform that lets you deploy your Rust apps for free.
cargo-careful¶
cargo-careful is a tool to run your Rust code extra carefully -- opting into a bunch of nightly-only extra checks that help detect Undefined Behavior, and using a standard library with debug assertions.
cargo-pgo¶
Cargo subcommand for optimizing binaries with PGO and BOLT.
cargo-hack¶
Cargo subcommand to provide various options useful for testing and continuous integration.
cargo-watch¶
Cargo Watch watches over your project’s source for changes, and runs Cargo commands when they occur.
dylint¶
Dylint is a Rust linting tool, similar to Clippy. But whereas Clippy runs a predetermined, static set of lints, Dylint runs lints from user-specified, dynamic libraries. Thus, Dylint allows developers to maintain their own personal lint collections.
cargo-generate¶
cargo-generate is a developer tool to help you get up and running quickly with a new Rust project by leveraging a pre-existing git repository as a template.
app-template¶
app-template
quickly sets up a probe-run + defmt + flip-link embedded project
.
cargo-deb¶
cargo-deb is a Cargo helper command which automatically creates binary Debian packages (.deb) from Cargo projects.
cross¶
cross provides “Zero setup” cross compilation and “cross testing” of Rust crates .
cargo-llvm-cov¶
cargo-llvm-cov offers a cargo subcommand to easily use LLVM source-based code coverage.