Crate of the Week

(Self-nomination) Public-key / Shared-key encryption library for serde::{Serialize, Deserialize} types.

5 Likes

pipeline, a macro crate for function composition and partial function application making deeply nested function calls a lot nicer.

Edit: I take it back, I found a few serious limitations that need to be resolved before advertising it to a broader audience.

1 Like

Maybe the fastest Rust HashMap...

4 Likes

Hypergraph - a data structure library to create a directed hypergraph in which a hyperedge can join any number of vertices.

2 Likes

https://www.badykov.com/rust/2021/06/27/fang/

Background processing for Rust

4 Likes

CSS-inline

(Self-nomination) Inlining CSS into style tags.

Useful for composing HTML emails.

2 Likes

prae

This crate provides a convenient macro that allows you to generate type wrappers that promise to always uphold arbitrary invariants that you specified.

4 Likes

https://github.com/ruma/ruma

I think this is an amazing example of a strongly typed JSON API, which is no small feat considering how flexible JSON is when sent from javascript or python. Ruma accomplishes this with some pretty cool macros, that are also worth checking out, and lots of custom serde impls.

ruma-events => macros
ruma-client-api => macros

4 Likes

rust_ipify is a small client library for ipify service.
Is a Client of API-bindings to retrive information about IP address and the global IP address of the machine.
You can find the Crate here

Self-nominating my own crate / side project :slight_smile: :

This is a BASIC interpreter and DOS-like environment fully written in Rust. The goal of the project is to provide a learning environment for coding, but also to offer a "fun" retro-looking computing experience.

The cool thing about this crate, which was not intended at first but that Rust made possible "for free", was targeting the web via WASM. Oh, and it now also has a cloud service running on Azure Functions, also written fully in Rust, but I haven't published the code to that...

5 Likes

Self-nominating https://github.com/Plato-solutions/siderunner

A library for running selenium .side files.

fltk-rs has just released 1.1.0, and my own experience has been very positive. Recommended!

2 Likes

trailofbits/dylint: A tool for running Rust lints from dynamic libraries.

I'm looking into this for writing application-specific lints for a large codebase.

4 Likes

Shameless self-nomination: sync_file, to concurrently read from files without race conditions.

I'd like to nominate Loadstone, a bare-metal bootloader for embedded systems, specifically systems running on Cortex-M microcontrollers.

4 Likes

Self-nomination: sycamore, a Rust library for making web applications using WebAssembly. Features include components, no VDOM, fine-grained reactivity, Server Side Rendering (SSR), Router, among others...

Sycamore is actually pretty fast (it's faster than Svelte) based on js-framework-benchmark.

9 Likes

Another self-nomination: synth is an open source declarative command line test data generator written in Rust.

3 Likes

I'll nominate Ockam.

https://crates.io/crates/ockam

I've personally tried to build some fundamental constructs like transport agnostic e2e encryption and actor libraries, but never invested enough in them. Ockam is basically doing what I had attempted and failed at, but way way way better.

I saw their blog post the other day and I think it's quite cool. e2e encryption + actors is a super cool primitive for secure and resilient services. It reminds me a bit of the hashicorp stack, but as a library.

IMO definitely worth checking out - I think frameworks like this are extremely high potential.

11 Likes

I'll nominate format_serde_error.
https://github.com/AlexanderThaller/format_serde_error

3 Likes

And a shameless self-nomination:

1 Like