Rust Development tools

Open-source Rust projects categorized as Development tools

Top 23 Rust Development tool Projects

  • GitHub repo Clippy

    A bunch of lints to catch common mistakes and improve your Rust code

    Project mention: Rust code review for nood program. | reddit.com/r/rust | 2021-04-10

    You should probably have a look at https://github.com/rust-lang/rust-clippy

  • GitHub repo neon

    Rust bindings for writing safe and fast native Node.js modules.

    Project mention: How I significantly improved Giganotes app performance using Rust | reddit.com/r/rust | 2021-03-09

    After researching a lot of options how to get the optimal performance combined to maximum code re-usability and cross-platform compilation. I found Rust as the best option to implement application's core. Except for the perfect package management tool, Rust has all the necessary bindings - Neon for Electron, Rust code easily compiles for Android. So it was relatively easy to implement the communication layer between Rust native code and those platforms like Node.Js (Electron) and Android.

  • GitHub repo PyO3

    Rust bindings for the Python interpreter (by PyO3)

    Project mention: HPy: a better C API for Python? [LWN.net] | reddit.com/r/Python | 2021-04-02

    I think I'll learn PyO3 instead.

  • GitHub repo Rustup

    The Rust toolchain installer

    Project mention: How to write the `channel` for `rust-toolchain.toml`? | reddit.com/r/rust | 2021-03-30

    PR #2653 which introduced the rust-toolchain.toml file is very recent and will only land in rustup version 1.24 from what I can tell. You can check what version you have using rustup --version but from what I can tell the latest publicly available stable version is 1.23. This seems to be a case where the docs have been updated faster than the change actually landed.

  • GitHub repo rustfmt

    Format Rust code

    Project mention: rustfmt with @generated not working | reddit.com/r/rust | 2021-04-13

    How to use the `@generated` with rustfmt? In this link https://github.com/rust-lang/rustfmt/blob/master/Configurations.md (format_generated_files) it mentions the default value is false.

  • GitHub repo Racer

    Rust Code Completion utility

  • GitHub repo Rust Language Server

    Repository for the Rust Language Server (aka RLS)

    Project mention: Show HN: Skruv – No-dependency, no-build, small JavaScript framework | news.ycombinator.com | 2021-04-07

    I have tried writing websites with rust instead of JavaScript. Unfortunately, the tooling is just not there. More specifically, I am talking about wasm-bindgen, which provides two-way bindings. The problem with it is that since all the declarations are generated with build.rs, there is no autocompletion. Since I am spoiled by modern tooling, no autocompletion to me means not feasible pass demo stage. (https://github.com/rust-lang/rls/issues/1489)

    Aside from the lack of autocompletion, passing rust closures to js land (DOM) is extremely janky as well. However, that might be caused by my lack of experience with rust.

    (If you are curious, this is what I made: https://github.com/SCLeoX/non-grid-path-finder)

  • GitHub repo just

    🤖 Just a command runner

    Project mention: How do you remember code snippets? | reddit.com/r/ADHD_Programmers | 2021-03-30

    I create private gists on github if it’s for me, public ones if I can see someone else actually needing it too and if it’s a repeating chore I like to somehow make it part of whichever repo I’m working with. I use Justfiles https://github.com/casey/just to make sure I won’t need to go dig in my shell history to try and find out how the hell I did something 6 months ago.

  • GitHub repo quickcheck

    Automated property based testing for Rust (with shrinking).

    Project mention: In praise of property-based testing | reddit.com/r/programming | 2021-01-12

    Ok, thanks. I see you've recommended https://github.com/BurntSushi/quickcheck as a Rust option so I'll give it a go.

  • GitHub repo rust-cpython

    Rust <-> Python bindings

    Project mention: How we built our Python Client that's mostly Rust | reddit.com/r/rust | 2021-03-31

    Author here. Yup! The Flapigen macros generate a ton of rust-cpython calls. I'll eventually get around to updating the flapigen book to include the parts I had to learn for this post.

  • GitHub repo tarpaulin

    A code coverage tool for Rust projects

    Project mention: 📽 2 videos about rust code coverage in VSCode | dev.to | 2020-10-11

    cargo tarpaulin: analyzes your rust code and gives you code coverage data

  • GitHub repo afl.rs

    🐇 Fuzzing Rust code with American Fuzzy Lop

  • GitHub repo cbindgen

    A project for generating C bindings from Rust code

    Project mention: Hey Rustaceans Got An Easy Question Ask Here | reddit.com/r/rust | 2020-12-28

    cbindgen can't support most arbitrary structs; they need to be marked #[repr(C)] which includes their fields: https://github.com/eqrion/cbindgen/blob/master/docs.md#supported-types

  • GitHub repo cargo-make

    Rust task runner and build tool.

    Project mention: Approach for releasing an application that has assets | reddit.com/r/rust | 2021-03-24

    Have you checked out cargo make?

  • GitHub repo xargo

    The sysroot manager that lets you build and customize `std`

    Project mention: Hey Rustaceans! Got an easy question? Ask here (53/2020)! | reddit.com/r/rust | 2020-12-28

    If you need to pass arguments to rustc, try cargo rustc or RUSTFLAGS instead of invoking it manually. If you're cross-compiling, check out cross (uses Docker) or xargo.

  • GitHub repo proptest

    Hypothesis-like property testing for Rust (by AltSysrq)

    Project mention: In praise of property-based testing (2019) | news.ycombinator.com | 2021-04-03

    I'm quite new to property testing, first introduced recently via a Rust property testing framework proptest[0]. So far i've had the feeling that property testing frameworks need to include a way to rationalize complexity, as their assumptions can easily fall short as you illustrated.

    Eg the simplest example might be an application where you input an integer, but a smaller int actually drives up the complexity. This idea gets more complex when we consider a list of ints, where a larger list and larger numbers are simpler. Etcetc.

    It would be neat if a proptest framework supported (and maybe they do, again, i'm a novice here) a way to rank complexity. Eg a simple function which gives two input failures and you can choose which is the simpler.

    Another really neat way to do that might be to actually compute the path complexity as the program runs based on the count of CPU instructions or something. This wouldn't always be a parallel, but would often be the right default i imagine.

    Either way in my limited proptest experience, i've found it a bit difficult to design the tests to test what you actually want, but very helpful once you establish that.

    [0]: https://crates.io/crates/proptest

  • GitHub repo clog-cli

    Generate beautiful changelogs from your Git commit history

  • GitHub repo cargo-release

    Cargo subcommand "release": everything about releasing a rust crate.

    Project mention: 🦀 Publishing My First Rust Crate | dev.to | 2021-01-11

    Use cargo-release and setup pre-release hooks and replacements.

  • GitHub repo rustfix

    Automatically apply the suggestions made by rustc

  • GitHub repo artifact

    The open source design documentation tool for everybody

  • GitHub repo cargo-deb

    A cargo subcommand that generates Debian packages from information in Cargo.toml

    Project mention: Rustup, Cargo, Rustc?? | reddit.com/r/rust | 2021-03-01

    cargo install does provide different options to change the installation dir (https://doc.rust-lang.org/cargo/commands/cargo-install.html) but I am uncertain, if there could be accociated issues. An alternative could be tools like https://github.com/mmstick/cargo-deb or https://github.com/iqlusioninc/cargo-rpm that can automatically create packages which can be used for a proper installation /usr/bin/ using your distributions packaging system.

  • GitHub repo cargo-update

    A cargo subcommand for checking and applying updates to installed executables

    Project mention: Is there a tool like cargo outdated for crates installed via cargo? | reddit.com/r/rust | 2020-12-27
  • GitHub repo MIRAI

    Rust mid-level IR Abstract Interpreter

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2021-04-13.

Index

What are some of the best open-source Development tool projects in Rust? This list will help you:

Project Stars
1 Clippy 5,699
2 neon 5,316
3 PyO3 4,015
4 Rustup 3,970
5 rustfmt 3,584
6 Racer 3,278
7 Rust Language Server 3,241
8 just 2,639
9 quickcheck 1,615
10 rust-cpython 1,411
11 tarpaulin 1,112
12 afl.rs 1,032
13 cbindgen 984
14 cargo-make 920
15 xargo 846
16 proptest 781
17 clog-cli 653
18 cargo-release 609
19 rustfix 589
20 artifact 553
21 cargo-deb 538
22 cargo-update 511
23 MIRAI 494