This is a list of software and programming tools for the Rust programming language, including IDEs, compilers, libraries, verification and debugging tools, numerical and scientific computing libraries, and related projects.
Compilers
Cranelift — code generator and JIT compiler that can be used to compile Rust through Wasmtime and experimental backendshttps://github.com/bytecodealliance/wasmtime LLVMhttps://llvm.org/ MRustC — alternative Rust compiler written in C++, focused on bootstrapping.https://github.com/thepowersgang/mrustc rustc — official Rust compiler, written in Rust and using LLVM as a backend.https://doc.rust-lang.org/rustc/index.html
Integrated development environments and editors
CLion / IntelliJ IDEA — with the official Rust plugin maintained by JetBrainshttps://www.jetbrains.com/rust/ Emacs — support via rustic mode and rust-modehttps://github.com/brotzeit/rustichttps://github.com/rust-lang/rust-mode Kate — basic Rust support via syntax highlighting and plugins Neovim / Vim — Rust support through plugins like rust.vimhttps://github.com/rust-lang/rust.vim and coc-rust-analyzerhttps://github.com/fannheyward/coc-rust-analyzer RustRover — JetBrains IDE focused on Rust development Visual Studio Code — Rust support via the Rust Analyzer language serverhttps://rust-analyzer.github.io/ Zed Rust Development Studio - Web based IDE for Rust written in Rust https://github.com/vernisaz/rust_dev_studio
Package managers and build systems Bazel — build system with community support for Rust ruleshttps://bazel.build/ Cargo — Rust package manager and build tool, included with Rust distribution.https://doc.rust-lang.org/cargo/ Crates.io — official package registry for Rust libraries and applicationshttps://crates.io/ Rustup — toolchain installer and version manager for Rusthttps://rust-lang.github.io/rustup/https://rustup.rs/
Libraries and frameworks Actix — actor framework and high-performance web frameworkhttps://actix.rs/ Diesel — ORM and query builder for Rusthttps://diesel.rs/ Rayon — data parallelism library for Rusthttps://github.com/rayon-rs/rayonhttps://docs.rs/rayon/latest/rayon/ Rocket — web framework focused on type safetyhttps://rocket.rs/ Serde — framework for serialization and deserialization supporting JSON, YAML, TOML, and more.https://serde.rs/ Tokio — asynchronous runtime for Rusthttps://tokio.rs/
Real-time and embedded systems no_std Rust — core Rust programming without the standard library, for bare-metal development.https://docs.rust-embedded.org/book/intro/no-std.html Rust for Embedded — Rust support for embedded systems via the Embedded Working Grouphttps://docs.rust-embedded.org/https://github.com/rust-embedded/awesome-embedded-rust RTIC — real-time concurrency framework for Cortex-M microcontrollershttps://rtic.rs/ Tock — embedded operating system written in Rusthttps://www.tockos.org/
Numerical and scientific computing Linfa — machine learning framework for Rusthttps://github.com/rust-ml/linfahttps://rust-ml.github.io/linfa/rustdocs/linfa/ ndarray — array and linear algebra operationshttps://github.com/rust-ndarray/ndarrayhttps://docs.rs/ndarray/latest/ndarray/ nalgebra — general-purpose linear algebra libraryhttps://docs.rs/nalgebra/latest/nalgebra/ Polars — DataFrame library for data analysis in Rusthttps://www.pola.rs/
Verification, debugging, and analysis Clippy — linter for Rust, providing warnings for common mistakes and idioms.https://github.com/rust-lang/rust-clippyhttps://doc.rust-lang.org/clippy/ Miri — interpreter for Rust's mid-level intermediate representation (MIR), used for checking undefined behavior.https://github.com/rust-lang/miri Rustfmt — formatting tool for Rust codehttps://github.com/rust-lang/rustfmt Sanitizer — Rust integration with LLVM sanitizers for memory and thread safetyhttps://doc.rust-lang.org/unstable-book/compiler-flags/sanitizer.html
Testing frameworks Built-in test framework — included in the Rust compiler and Cargohttps://doc.rust-lang.org/book/ch11-01-writing-tests.htmlhttps://doc.rust-lang.org/rust-by-example/testing/unit_testing.html Proptest — property-based testing framework for Rusthttps://altsysrq.github.io/proptest-book/https://docs.rs/proptest/latest/proptest/ QuickCheck for Rust — port of the Haskell QuickCheck property-testing libraryhttps://github.com/BurntSushi/quickcheck
Documentation and code generation Bindgen — generates Rust FFI bindings to C librarieshttps://rust-lang.github.io/rust-bindgen/https://docs.rs/bindgen/latest/bindgen/ Cbindgen — generates C headers from Rust codehttps://github.com/mozilla/cbindgenhttps://docs.rs/cbindgen/latest/cbindgen/ rustdoc — official Rust documentation generatorhttps://doc.rust-lang.org/rustdoc/
See also
Lists of programming software development tools by language Outline of the Rust programming language
External links Awesome-Rust — GitHub list of Rust software and tools crates.io — Rust package registry Official Rust documentation Official Rust website Rust on GitHub
References