Crate of the Week

It's been a while, but I'd like to post in a recommendation for aliri_braid, a simple newtype wrapper for strings, making it easy to carry semantic information along with your string values.

I would like to self-suggest the crate scandir. It is a very fast file tree scanner. The high performance is achieved through multithreaded metadata reading. It comes with 2 packages:

  • One is for direct use in other Rust project without pyo3 dependency.
  • And the other is for creating a Python module.

The crate and the doc can be found here.

Best regards

2 Likes

I’ve found derive_more helpful recently, so id like to nominate it for next week:

It makes deriving implementations of standard traits easier. It has a wide range of traits, including conversion, reference, access, formatting, and numeric traits.

2 Likes

Self-nomination: show-option.
Display Option<T> without unnecessary conversions and allocations.

println!("received: {}", Some(20).show_suffixed_or(" bytes", "none")); // "received: 20 bytes"

Nominating (for any week :slight_smile:) GitHub - dropbox/fast_rsync: An optimized implementation of librsync in pure Rust.

It's a faster implementation of librsync in pure Rust, with SIMD optimizations.

1 Like

Self-nomination: stated-scope-guard, a more flexible RAII pattern for stated resource management.

1 Like

Self-nominating flawz:

A Terminal UI for browsing security vulnerabilities (CVEs)
(Built using Ratatui library)

Map of air raid alerts in Ukraine, provides both an API wrapper powered by reqwest and a TUI CLI.

6 Likes

A simple TCP packet sniffer based on pcap. I refactored a ton and I think the compiler deserves most of the credit. Most importantly, I had fun making this and I took my time with it.

I would like to nomimate my actor framework hydra. Heavily inspired by Erlang/Elixir, also includes a drop-in websocket actor implementation.

2 Likes

I would like to propose an encrypted file system that is mounted with FUSE on Linux. It can be used to create encrypted directories.
You can use it as CLI or build your custom FUSE implementation with it.

You can then safely backup the encrypted folder on an untrusted server without worrying about the data being exposed.
You can also store it in any cloud storage like Google Drive, Dropbox, etc. and have it synced across multiple devices.

1 Like

I'd like to self-nominate Holo, a suite of routing protocols designed to support high-scale and automation-driven networks.

Similar projects in other languages include FRRouting and GoBGP.

If anyone is curious, you can read more about the project here: Introducing the Holo Routing Protocol Suite | by Renato Westphal | Jun, 2024 | Medium

[self-nomination]
Goku
An HTTP load testing application written in Rust.

I'd like to self-nominate cargo-binstall - Binary installation for rust projects, drop in replacement of cargo-install

It can automatically find artifacts on GitHub releases, using the repository saved in crates.io tarball Cargo.toml

7 Likes

The last few THIR have had comments about a lack of suggestions this week, so I wanted to self-nominate a previous entry that was skipped over

It's an embedded key-value store that is being used both with and without Tock

2 Likes

derive-deftly – Write a #[derive] macro, using a template syntax which looks a lot like macro_rules! and does not need to be placed in a separate proc macro crate.

4 Likes

I'd like to self-nominate nctok - tui tool for interactive navigating through weighted hierarchical structured data and analyzing them.

If you know tool like ncdu, my program is just unified interface of the same idea, so now it can be used for analyzing any data, not just disk usage metrics.

1 Like

I'd like to nominate papaya, a fast and ergonomic concurrent hash-table for read-heavy workloads.

1 Like

cargo wizard is a Cargo subcommand that helps you quickly configure Cargo project for maximum runtime performance or faster compilation time.

(self nomination)

3 Likes

diatomic-waker - an alternative to a popular atomic-waker crate that does not spin lock executor during contention, well document, tested with loom and claims to be generally faster.

(not self-nomination)