Crates by Category

| cat~api-bindings | Idiomatic wrappers of specific APIs for convenient access from Rust. Includes HTTP API wrappers as well. Non-idiomatic or unsafe bindings can be found in External FFI bindings. | bzip2 flate2 rug xz2 | | cat~algorithms | Rust implementations of core algorithms such as hashing, sorting, searching, and more. | fastrand glidesort itertools num num-bigint num-complex num-rational num-traits pathfinding priority-queue rand rand_distr | | cat~asynchronous | Crates to help you deal with events independently of the main program flow, using techniques like futures, promises, waiting, or eventing. | axum | | cat~caching | Crates to store the results of previous computations in order to reuse the results. | slotmap | | cat~development-tools::cargo-plugins | Subcommands that extend the capabilities of Cargo. | cargo-expand | | cat~command-line-utilities | Applications to run at the command line. | just | | cat~compression | Algorithms for making data smaller. | bzip2 flate2 gzip xz2 | | cat~concurrency | Crates for implementing concurrent and parallel computation. | parking_lot | | cat~cryptography | Algorithms intended for securing data. | ring sha2 | | cat~data-structures | Rust implementations of particular ways of organizing data suited for specific purposes. | arrayvec bitvec graph-rs heapless im indexmap indextree ndarray num num-bigint num-complex num-rational petgraph priority-queue rangemap roaring rpds rust_decimal skiplist slotmap smallvec tinyvec uuid | | cat~development-tools::debugging | Crates to help you figure out what is going on with your code such as logging, tracing, or assertions. | cargo-expand | | cat~development-tools | Crates that provide developer-facing features such as testing, debugging, linting, performance profiling, autocompletion, formatting, and more. | derive_more just | | cat~embedded | Crates that are primarily useful on embedded devices or without an operating system. | bitvec | | cat~encoding | Encoding and/or decoding data from one data format to another. | serde serde_ignored serde_json | | cat~filesystem | Crates for dealing with files and filesystems. | glob notify remove_dir_all walkdir | | cat~gui | Crates to help you create a graphical user interface. | slint yew | | cat~game-engines | For crates that try to provide a "one-stop-shop" for all of your game development needs. | glam | | cat~graphics | Crates for graphics libraries and applications, including raster and vector graphics primitives such as geometry, curves, and color. | vello | | cat~web-programming::http-server | Crates to serve data over HTTP. | axum | | cat~mathematics | Crates with a mathematical aspect. | nalgebra nalgebra-lapack rug rust_decimal | | cat~memory-management | Crates to help with allocation, memory mapping, garbage collection, reference counting, or interfaces to foreign memory managers. | slotmap | | cat~network-programming | Crates dealing with higher-level network protocols such as FTP, HTTP, or SSH, or lower-level network protocols such as TCP or UDP. | axum | | cat~no-std::no-alloc | Crates that are able to function without the Rust alloc crate. | itertools serde | | cat~no-std | Crates that are able to function without the Rust standard library. | anyhow arrayvec bitflags bitvec derive_more glam heapless indexmap itertools nalgebra num-traits ordered-float rand rand_distr ring serde serde_ignored serde_json sha2 slint tinyvec typenum uom uuid | | cat~parser-implementations | Parsers implemented for particular formats or languages. | serde_json uuid | | cat~parsing | Crates to help create parsers of binary and text formats. Format-specific parsers belong in other, more specific categories. | strum | | cat~development-tools::procedural-macro-helpers | Crates to help you write procedural macros in Rust. | derive_more strum | | cat~rendering | Real-time or offline rendering of 2D or 3D graphics, usually with the help of a graphics card. | vello | | cat~rendering::engine | High-level solutions for rendering on the screen. | slint | | cat~rust-patterns | Shared solutions for particular situations specific to programming in Rust. | anyhow bitvec itertools ordered-float | | cat~science | Crates related to solving problems involving physics, chemistry, biology, machine learning, geoscience, and other scientific fields. | nalgebra nalgebra-lapack ndarray num num-bigint num-complex num-rational num-traits ordered-float rust_decimal statrs uom | | cat~text-processing | Crates to deal with the complexities of human language when expressed in textual form. | aho-corasick regex strsim | | cat~value-formatting | Crates to allow an application to format values for display to a user, potentially adapting the display to various languages and regions. | uom | | cat~web-programming | Crates to create applications for the web. | yew | | cat~wasm | Crates for use when targeting WebAssembly, or for manipulating WebAssembly. | nalgebra uuid yew | | cat~os::windows-apis | Bindings to Windows-specific APIs. | windows |

All Valid Categories↗.