Crate of the Week

apply: a tiny library for chaining free functions into method call chains. For example, ever wanted tuples to have a .map() equivalent? let second = (12, 20, 30).apply(|x| x.1) does the trick.

6 Likes

cargo-wipe

Cargo subcommand that recursively finds and optionally wipes all "target" or "node_modules" folders that are found in the current path.

3 Likes

defer-drop: a newtype that defers object drops to a background thread.

1 Like

cargo-asm can disassemble your bin. Useful for performance analysis and as an offline alternative to the Godbolt compiler explorer.

10 Likes

uniquote is an improved version of Path::display. It displays paths losslessly and escapes unprintable characters. #![no_std] is also supported without an allocator.

5 Likes

robotstxt: a native Rust port of Google's robots.txt parser and matcher C++ library.

  • Native Rust port, no third-part crate dependency
  • Preserves all behavior of original library
  • Consistent API with the original library
  • 100% google original test passed
7 Likes

JQL - A JSON Query Language CLI tool.

3 Likes

A faster tig:


(The only down side is it's an impossible project name to search for!)
3 Likes

cargo-spellcheck - spell & grammar checking for documentation comments

rpm-rs - a full rpm parser and synthesizer in rust (not a binding!)

2 Likes

Little traction so far but very useful when prototyping.
2 Likes

Helps decrease compile times for projects that need to include strings or bytes from files at compile time.

1 Like

Write safer FFI code in Rust without polluting it with unsafe code

6 Likes

is a disk space navigator for the terminal (written in Rust, of course :slight_smile: ). (full disclosure: I am the author)

13 Likes

k9 - Rust Testing Library

2 Likes

A program that simulates the behavior of bodies that attract each other in real-time using wgpu.

1 Like

print_bytes allows printing broken UTF-8 bytes to an output stream as losslessly as possible. Now, it can even print OsStr losslessly on Unix and Windows (when writing to Windows Console).

2 Likes

Async DoubleCheckedCell helps avoid race conditions when a program needs to initialize data asynchronously and lazily.

2 Likes

SuckIT allows you to recursively visit and download a website's content to your disk.
Much faster than tools like HTTrack.

8 Likes

stdext is a crate with minor additional features for std. It is designed to be more agile in terms of getting a new std feature to your codebase, and less strict in terms of added features.

2 Likes

The assert_equal macro looks very useful. Checking the difference between structs is indeed painful with the standard assert_eq.

3 Likes