SaaSHub helps you find the best software and product alternatives Learn more →
Top 23 Rust Development tool Projects
-
Project mention: I'll think twice before using GitHub Actions again | news.ycombinator.com | 2025-01-20
theoretically we could also use https://just.systems/ or https://mise.jdx.dev/ instead of directly calling gh actions but I haven't tried gh actions personally yet , If its really the nightmare you are saying , then that's sad.
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
-
-
Clippy
A bunch of lints to catch common mistakes and improve your Rust code. Book: https://doc.rust-lang.org/clippy/
Firstly, I added a section to run the code formatter rustfmt and the linter clippy:
-
Project mention: Go automatically downloads a newer toolchain if needed | news.ycombinator.com | 2024-08-20
It seems like that will change in the (near) future according to the following github issue[0]. A quote from one of the developers, rami3l, in that thread[1]:
> My current plan is indeed to remove implicit installations entirely.
[0]: https://github.com/rust-lang/rustup/issues/3635
[1]: https://github.com/rust-lang/rustup/issues/3635#issuecomment...
-
Firstly, I added a section to run the code formatter rustfmt and the linter clippy:
-
-
-
Project mention: Static search trees: 40x faster than binary search | news.ycombinator.com | 2024-12-31
Well, I don't use makefiles to deploy software with Rust. I also have never used lex or yacc, but I bet there are similar tools in the ecosystem, or wrappers for those. That would obviate what I will offer below.
Often a new language in a project would define an application boundary. So those would be different containers or services. I may deploy via container images, or an OS specific installer, etc. If we aren't crossing an application boundary I may use FFI. Sometimes I use https://rust-lang.github.io/rust-bindgen/ to smooth that over for C dependencies. There is also a nice concept called a build.rs file: https://doc.rust-lang.org/cargo/reference/build-script-examp.... There's also tools like: https://github.com/casey/just and https://sagiegurari.github.io/cargo-make/
I rarely use multiple languages with Rust. A lot of interpreted languages have bindings through crates and can go in to a project through Cargo. If it involves JS/TS on desktop, I'm usually using Tauri for that. Guess it depends on the system?
Hopefully that helps. You can also still use a Makefile if you want I just haven't dealt with one in a long time.
-
-
Project mention: SlateDB – An embedded database built on object storage | news.ycombinator.com | 2024-10-01
Rust is just another programming language that’s quite similar to C++. The main difference is there’s like 4 types for String (some are references and some are owned) and methods for a struct go in a `impl StructName` block after the struct definition instead of inside it.
I don’t really know rust either but I’m currently writing some bindings to expose Rust libraries to NodeJS and not having too much trouble.
For rust -> c++ I googled one time and found this tool which Mozilla seems to use to call Rust from C++ in their web browser, maybe it would “just work”: https://github.com/mozilla/cbindgen?tab=readme-ov-file
-
-
-
In this post, I will tell you how I used property testing with the Proptest library in Rust to ensure the correctness of a bunch of generated serialization/deserialization code for the Apache Kafka protocol.
-
-
My problem with maintaining a changelog during development is it can serve as a source of merge conflicts. Instead, I follow Covnentional Commit style and manually write my changelog entries based on the commits. I have a tool [0] that can show me the relevant commits for a package in my repo and automates the entire release process, including doing sanity checks.
I also feel like releasing from CI is hard, especially if you have multiple packages in a repo [1], including
- You can't as easily introspect the process
- You can't as easily recover from failure
- Getting a lot of the nuance right, like handling releases concurrent to merging of PRs, is difficult
- When the workflow is an ever-present "release PR" that you merge when ready has issues with selecting which packages to release and at what version
I have been considering making a tool to generate changelogs from fragments. Been keeping notes at https://github.com/epage/epage.github.io/issues/23
[0]: https://github.com/crate-ci/cargo-release
[1]: https://github.com/MarcoIeni/release-plz/discussions/1019
-
-
-
-
-
-
-
Project mention: J4rs – 'Java for Rust' allows effortless calls to Java from Rust and vice-versa | news.ycombinator.com | 2024-09-26
-
Rust Development tools discussion
Rust Development tools related posts
-
DoxyPress – Modern Doxygen
-
Rust Bindings for the Python Interpreter
-
Ask HN: Python in the NoGIL World
-
How to introduce 🦀 Rust at your company 🏭?
-
An interpreter inside an interpreter
-
Pyqwe: The quick work environment for Python
-
Automated Testing and Dev Containers
-
A note from our sponsor - SaaSHub
www.saashub.com | 20 Jan 2025
Index
What are some of the best open-source Development tool projects in Rust? This list will help you:
# | Project | Stars |
---|---|---|
1 | just | 23,257 |
2 | PyO3 | 12,802 |
3 | Clippy | 11,655 |
4 | Rustup | 6,254 |
5 | rustfmt | 6,136 |
6 | Racer | 3,356 |
7 | CodeLLDB | 2,658 |
8 | cargo-make | 2,635 |
9 | tarpaulin | 2,580 |
10 | cbindgen | 2,500 |
11 | quickcheck | 2,440 |
12 | rust-cpython | 1,813 |
13 | proptest | 1,774 |
14 | afl.rs | 1,676 |
15 | cargo-release | 1,371 |
16 | jni-rs | 1,293 |
17 | cargo-update | 1,266 |
18 | xargo | 1,094 |
19 | cargo-modules | 1,022 |
20 | clog-cli | 865 |
21 | Mockito | 703 |
22 | j4rs | 662 |
23 | stainless | 454 |