Skip to content

dutt/rust-recommended-libaries

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 

Repository files navigation

rust-recommended-libaries

A list of recommended libraries. "std required" is okay for libraries on this list.

There's a maximum two-three per task, of this grows to 58 libraries for error handling it doesn't help since people still don't know what to use.

At the bottom I've also added recommended rustup/cargo things.

Error handling

In libraries

thiserror

In applications

anyhow

eyere / color-eyere

maybe:?

snafu

Iterators

itertools

Logging

Libraries

log with tracing and tracing-subscriber

Applications

Can use log from above, or these:

env_logger

Serialization

serde, usually with serde-json

Data types

Dates, times etc

chrono

Float values

float-ord

noisy_float

Enums

strum

Bit flags

bitflags

Parse command line

clap

structopt

Web

hyper (low level server & client)

Clients

reqwest

Servers

actix

rocket

warp

WASM

wasm-bindgen

web-sys

Frontend

seed

yew

Async runtimes

tokio

async-std

Linear algebra

nalgebra

ndarray

Byte juggling

bytemuck for generic byte mucking

byteorder

Cryptography

crypto has generic crypto algorithms.

rustls has a full TLS suite.

Randomness

rand

Procedual Macros

syn for parsing macro input

quote for assambling macro output

darling for parsing macro input into structs

RegEx

regex

Database

SQL

sqlx for creating queries.

ORM

diesel

rustup

rustfmt - format your rust code

cargo

clippy - get more help and tips to improve your code

flamegraph - get flamegraph svgs

cargo-audit - check your dependencies for vulnerabilities

cargo-tarpaulin - code coverage

Want to contribute?

Great! Open a pull request, if you want a library added and there's already two for that task include motivation which should be removed and why.

Why this list?

As an experienced (>10 years) backend developer the disconnect between the "Rust by example"-book and what I imagined "rust in production" to be was bugging me. I wasn't sure which libraries to go. A question on the rust reddit led me to create this.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published