CATEGORY
Data structures 10,114 crates
Data as of 2026-07-25 (crates.io database dump, timestamp 2026-07-25T02:00:36Z). Source: crates.io · db-dump.tar.gz · methodology & corrections.
nexus-queueHigh-performance lock-free SPSC and MPSC queues for low-latency systems6,779MIT OR Apache-2.0
clone-streamTurn any Stream into a cloneable stream where each clone receives all items independently.6,777MIT
csvenumGenerate code for enums with associated constants from a .csv in your command line.6,774MIT/Apache-2.0
cargo-algoristCargo subcommand to manage the algorist crate6,774MIT
dotreds-binary-heap-plusEnhanced version of std::collections::BinaryHeap that supports max, min, and custom-order heaps. Makes some previously internal…6,773MIT
chinese-randRandom generation of data structures in Chinese, using Rust6,770MIT
greenwasm-structureAn implementation of the structure section from the Webassembly spec.6,758MIT/Apache-2.0
workspacer-analysisAsynchronous Rust crate for detailed analysis of workspace file metrics, including sizes, lines of code, and file counts across…6,747MIT
hodgepodgeLightweight dataset crate of enums for prototyping, teaching, and experimentation6,747MIT OR Apache-2.0
serde-orderedA procedural macro for deserializing ordered arrays into keyed structs using Serde.6,745MIT OR Apache-2.0
netidx-valuenetidx value type6,733MIT
rarenaLock-free allocator and data structures based on ARENA.6,731MIT OR Apache-2.0
rc-dlist-dequeDoubly-linked list based on std::Rc6,729GPL-3.0-or-later
pochitaA allocation arena for Rust.6,723MIT/Apache-2.0
slotmap-fork-otterSlotmap data structure - temporary fork for Otter6,722Zlib
dd_statechartA Data-Driven implementation of Harel Statecharts designed for high-reliability systems.6,722GPL-3.0-only
mmap_byteyMmap Bytey provides a convenient and easy to use byte storage.6,721MIT OR Apache-2.0
uwheel-statsprofiling utility for uwheel6,712MIT OR Apache-2.0
gsrsGeneric Self Referencing Struct6,710MIT
tasvideos-api-rsBlocking API wrapper for TASVideos.org.6,710MIT
tiny-artnet-bytes-no-atomicVendored copy of Bytes fork for use in tiny-artnet. Types and traits for working with bytes6,702MIT
nstrA no_std, no_alloc, embedded-friendly string library6,701MIT
map-of-indexesA compact key-value map for unique but not dense indexes6,693AGPL-3.0+
digest-hashCryptography-grade data structure hashing6,684Apache-2.0/MIT
peselPESEL validation & generation library6,681MIT
hvecA Vec-like structure that can store different types of different sizes contiguous with each other in memory.6,676CC0-1.0
sp-imImmutable datatypes for no_std use within Substrate6,675MIT
gentrixA library that adds the Matrix typed using generics that is basically a wrapper around a 2D Vector6,660MIT
auburnDeprecated: use auburn2d or auburn3d instead.6,657MIT OR Apache-2.0
summum-typesA sum-type macro crate with all the conversions, accessors, and support for abstract methods across variants, and…6,642MIT OR Apache-2.0
in-situIn Situ Endian-Independent Bytes Access6,642MIT OR Apache-2.0
imbufImage buffers that abstract over underlying storage (Vec, Arc, or custom backends). Features copy-on-write semantics for…6,638MPL-2.0
mio-byte-fifoConcurrent non-blocking byte SPSC FIFO buffer intended for use in Mio poll6,637MIT/Apache-2.0
desenvConfiguration loader from environment variables6,635MIT OR Apache-2.0
HArcMutmutable arc6,629MIT OR Apache-2.0
tc-fsTinyChain's transactional filesystem interface layer6,628Apache-2.0
mco-genStackfull Generator Library in Rust6,618MIT/Apache-2.0
varlenErgonomic variable-length types6,610BSD-3-Clause
valustA data validation library for Rust6,607MIT OR Apache-2.0
fexbluffersAllocation optimized FlexBuffer implementation (Rust).6,600Apache-2.0
minsizeCollections with a statically known minimum size (using const generics)6,595MIT OR Apache-2.0
counting-networksLock-free data structures for concurrent counting6,593Apache-2.0/MIT
mediator-sysStrongly typed, extensible event mediator6,584MIT OR Apache-2.0
wasmer-types-uncWasmer Common Types6,578MIT OR Apache-2.0 WITH LLVM-exception
try-rwlockFast non-blocking readers-writer lock6,578MIT OR Apache-2.0
simple_ringbufSimple Ringbuf is a speedy lightweight fixed-size infinite-use collection optimized for straightforward single threaded use.6,574MIT/Apache-2.0
valust-deriveA derive macro for the Valust crate6,568MIT OR Apache-2.0
luciaA flexible client API framework as well as a set of API collections6,564MIT
mmap-wrappera simple wrapper for the memmap2 crate to cast mmap backed pointers to structs6,558MIT
brie-treeA fast B+ Tree implementation that uses integer keys6,555Apache-2.0 OR MIT
ornamentA helper to create decorated text.6,547MIT
thalo-kafkaKafka event stream for crates.io/thalo6,546MIT OR Apache-2.0
grapesPersistent graph data structures: Tree, Graph, Arena & more6,544MIT OR Apache-2.0
beat_saber_mapRead and write Beat Saber maps with Rust.6,544MIT
static-boxA stack-allocated box that stores trait objects.6,542MIT OR Apache-2.0
cbsk_socket_rayonsocket callback tool by rayon6,540MIT/Apache-2.0
ctxmapA collection that can store references of different types and lifetimes.6,538MIT OR Apache-2.0
san-rsA library for parsing standard algebraic notation (SAN)6,537GPL-3.0-only
oxbowRead conventional genomic file formats as data frames and more via Apache Arrow.6,535MIT OR Apache-2.0
bnr-xfsPure Rust implementation of the BNR XFS USB6,531MIT
dxprDifferentiable expression templates in compile-time, dependency-free, no_std Rust.6,523Zlib
simple_event_busA basic, simple event bus in Rust6,514MIT
metadata-storeA simple store for recoverable metadata that is written in atomic batches.6,512MIT/Apache-2.0
tsil_cevLinkedList on Vec6,512MIT
flow_arenaA HashMap managed Graph Model with the concept of ownership6,508non-standard
btree-plus-storeB-trees backed by a slab/arena to reduce allocations and increase locality + copyable, immutable B-trees which must be manually…6,503MIT/Apache-2.0
simple-observableSimple observable pointer for mutable and immutable data6,495MIT
soft-edgeefficient bithackery for making 3D collision meshes out of grids and stacked tile maps6,495MIT OR Apache-2.0
dyn-ptrA box that stores types like pointers,
forgetting everything besides `Self: Unsize<dyn Trait>`6,494MIT
datacake-sqliteA pre-built implementation of datacake's Storage trait using SQLite.6,490MIT
anda_db_utilsA utility Rust library for Anda DB.6,490MIT
lockfreehashmapA concurrent, lock-free hash map.6,489LGPL-3.0+
engulaThe Engula command line tool.6,478Apache-2.0
mori_parallelA parallel orientation library built around commonly used orientation representations used in crystallography and engineering…6,474MIT/Apache-2.0
bitintInteger types that have a logical size measured in bits.6,464MIT
rvf-typesRuVector Format core types -- segment headers, enums, flags6,457MIT OR Apache-2.0
fbsFbs FlatBuffers Rust runtime library.6,447Apache-2.0
hitreeIndexable containers for Rust: HiSet and HiMap6,440Apache-2.0
rdf-store-tursoA Turso storage adapter for RDF.rs knowledge graphs.6,430Unlicense
pareto_frontBuilds a Pareto front incrementaly.6,423Apache-2.0
tsuzuriTsuzuri is a Event Sourcing framework for Rust, designed to be simple and easy to use.6,404MIT OR Apache-2.0
allwordsGenerate all the words over a given alphabet6,403MIT
smart-hashpartial queries in HashSets, the traits.6,402MIT
mvbitfieldGenerates types to work with bit-aligned fields.6,398MIT
untisRust library for accessing the Untis API6,394MIT
cell-gridA simple 2d grid container6,393Unlicense
renegeTracking cache validity using fast concurrent invalidation propogation.6,385MIT OR Apache-2.0
byte_trieA compressed trie based on bytes with some weird child node bucket sizes.6,379Apache-2.0 OR MIT
dade_derivedade is data definition for Rust structures.6,373MIT
ism-ismcatODNI ISMCAT schema package, vendored. Designed as a build-dependency for codegen. SHA-256 verified at compile time.6,371LicenseRef-PublicDomain AND (MIT-0 OR Unlicense)
pi_phf_mapphf_map6,370MIT OR Apache-2.0
spdx-toolkitToolkit for interacting with SPDX Documents6,368MIT
ismODNI ISM (Information Security Marking) schema package, vendored. Designed as a build-dependency for codegen. SHA-256 verified at…6,367LicenseRef-PublicDomain AND (MIT-0 OR Unlicense)
stealth-libZK-friendly cryptographic primitives (MiMC hash, Merkle trees)6,364MIT
spatial-neighborsSimple to use implementation of certain Spatial-Partitioning Algorithms | DataStructures6,359MIT
tinyboxLike `Box`, but with an optimization that avoids allocations for small data-structures6,356MIT OR Apache-2.0
skipdb-coreThe core for `skipdb` and `async-skipdb` crates6,355MIT OR Apache-2.0
search_trailA simple manager of variables that can save and restore their values6,350MIT
tinyvecdeq`VecDeque`-like data structures6,346Zlib OR Apache-2.0 OR MIT
coding_benchmarkThe program for benchmarking Huffman coding algorithms6,344MIT OR Apache-2.0
pallet-commoditiesA unique asset (NFT) interface and a Substrate FRAME implementation optimized for commodity assets.6,342Unlicense
moriAn orientation library built around commonly used orientation representations used in crystallography and engineering…6,339MIT/Apache-2.0
espalierVery simple flattened tree structure.6,338MIT/Apache-2.0
processing_chainRust library to set up processing chains of large amounts of data.6,334MIT
fluxorFluxor is a versatile Rust web framework designed for data science and computing science applications.6,334MIT OR Apache-2.0
verify-callUtility to verify whether a method has been called on a mock.6,331MIT
uniqueidGenerates a unique hash/identifier for a system given a set of parameters.6,329GPL-3.0
lsmdblsmdb is an efficient storage engine that implements the Log-Structured Merge Tree (LSM-Tree) data structure, designed…6,319MIT OR Apache-2.0
TCFSMFTTTCSUnsafe, yet fast finite state machine for counting :ty TokenTree clusters in any :ty TokenTree cluster sequence. It works for…6,318MIT
wp-parse-apiMinimal plugin API for wp-lang data pipelines and parser components6,318Elastic-2.0
linux-file-infoThis crate is for gathering useful infos about linux entities(files, folders or symlinks) with developer friendly way.6,307MIT
vercre-coreDEPRECATED: OpenID compliant Verifiable Credential core types and traits6,304MIT OR Apache-2.0
canopydbTransactional key-value storage engine6,303MIT
uberbyteBit manipulation for dummies6,293MIT
persistent_ropeAn immutable persistent rope data structure6,293MIT
actionsSoftware without side-effects. Redo and Undo. Macro's.6,293MIT
astronomical-quantitiesUnit-safe computations with astronomical quantities.6,290non-standard
suggestion_trieA Radix trie for suggestion search, it allows to search for data indexed by a set of keywords fast.6,289MIT
cortex-memory-coreEmbedded graph memory engine for AI agents — typed nodes, auto-linking, decay, hybrid search, and briefing synthesis6,289MIT
valust-utilsUtilities for the Valust crate6,286MIT OR Apache-2.0
bones_utilsUtilites used throughout the bones_framework.6,285MIT OR Apache-2.0
primaGeneric 2D library used to handle graph structures and basic geometry.6,283MIT/Apache-2.0
cbsk_uniqueunique value generator6,282MIT/Apache-2.0
u24An unsigned 24-bit integer type.6,277MIT OR Apache-2.0
exhaustive-mapAn exhaustive map for types with finite inhabitants6,272MIT OR Apache-2.0
openraft-rocksstore-compat07A example v07 compatible implementation of the `openraft::RaftStorage` trait.6,270MIT/Apache-2.0
recursive_referenceThis crate provides a way to walk on recursive structures easily and safely.6,266MIT OR Apache-2.0
tongramsTons of N-grams6,263MIT
uvectoraccess two slices as a single continuous vector6,260MIT
libsparkypicontrol radio switch sockets and similar devices via linux gpiodev6,257GPL-3.0-only
small_vec2Vector on the stack or heap need nightly rustc6,247MIT/Apache-2.0
austinhellerrepo-common-rustThis library contains all general algorithms and functionality that can easily be shared between my other projects.6,231MIT OR Apache-2.0
slotmapvecDeprecated: use slotmap6,230MIT
soavec_deriveMacro implementation of #[derive(SoAble)]6,225MPL-2.0
unsized-stackFast heterogeneous / unsized stack6,221MIT
inferadb-ledger-storeEmbedded B+ tree database engine for InferaDB Ledger6,220MIT OR Apache-2.0
array-dequeFixed-capacity circular buffer implementations: heap-allocated ArrayDeque and stack-allocated StackArrayDeque. Efficient O(1)…6,217MIT
json-parserJSON parser6,211MIT
set_timeoutA crate which allows efficiently executing futures after some delay has passed6,209GPL-3.0-only
xdagA simple Rust DAG(Directed Acyclic Graph) lib6,206MIT
const-arrayvecA vec-like type backed by an array on the stack.6,205MIT OR Apache-2.0
usherParameterized routing for generic resources in Rust6,204MIT
flat_stringFlatString is a fixed-size String that can be created directly on the stack.6,204MIT
signvecVector implementation for fast, sign-based manipulation of dynamic collections.6,201MIT
closed-interval-setUnions of closed intervals as containers of pairs6,199MIT
calf-vecSmall copy-on-write arrays, essentially combining `SmallVec` and `Cow`6,191MIT/Apache-2.0
chuteLockfree mpmc/spmc broadcast queue.6,174MIT OR Apache-2.0
sgf-toolSGF Tool6,173MIT
tiff-coreShared TIFF/BigTIFF types: byte order, tag types, tag values, sample traits, and format constants6,173MIT OR Apache-2.0
optativeA reconciler as a memory model: declare desired state, run lifecycle hooks (enter/reconcile/exit) on the diff.6,163MIT OR Apache-2.0
unique_id_lookupAssociative Array specifically designed for integer keys. Significant performance boost over conventional hash maps.6,162Apache-2.0 OR MIT
firimsfixed range integer maps and sets6,160MIT
decimal64Fast fixed point arithmetic that only uses u64 as internal representation.6,159MIT
intrusive_splay_treeAn intrusive splay tree implementation that is no-std compatible and free from allocation and moves.6,158MPL-2.0
synctreeThread-safe tree data structure6,154MIT OR Apache-2.0
aloALO means At Least One.
It could contain any number of item like `Vec` but
it does not heap allocation if it contains only one…6,153MIT/Apache-2.0
rimu-metaA data structure template system.6,149MIT OR Apache-2.0
bitcoinleveldb-logtoolsLow-level LevelDB-style log utilities for Bitcoin-oriented storage stacks: record type enums, extended record flags, unsafe…6,147MIT
nexus-bits-deriveDerive macros for nexus-bits. Use nexus-bits instead of depending on this directly.6,139MIT OR Apache-2.0
sparse_complexA simple solver for complex sparse matrices.6,134MIT
bitcoin-u160A Rust crate for efficiently handling 160-bit opaque blobs, commonly used in cryptographic and Bitcoin-related contexts, with…6,132MIT
collideSimple extensible collision management6,129MIT OR Apache-2.0
roersA tool to prepare augmented annotations for single-cell RNA-seq analysis.6,126non-standard
disrustorThis project is a port of the LMAX Disruptor to Rust6,123MIT
zddA Zero-suppressed BDD library.6,122MIT/Apache-2.0
app_propertiesA Rust library for reading application properties from a file.6,119MIT
sparse_set_containerA container based on sparse set. Stable keys, O(1) lookup, cache-friendly iterations, and no hashing.6,107MIT
edit-xmlRead, modify and write xml in tree-like structure.6,107MIT OR Apache-2.0
atomic-hyperloglogthread-safe hyperloglog, with atomics6,107MIT
a2a-rs-coreCore types for the A2A RC 1.0 agent-to-agent protocol6,102Apache-2.0
nadi_pluginMacro library to write plugins for nadi system using nadi_core6,101GPL-3.0-only
kudoA minimalist Entity Component System. (Work in Progress)6,097Zlib
comprisComposite Primitive Schema (CPS) for Rust6,073MIT OR Apache-2.0
rep_deriveA small tool for representation/class invariants6,070MIT
cbor-cliEncode, decode, and inspect CBOR (RFC 8949) from the command line. Convert between CBOR, JSON, YAML, and TOML via serde, with…6,070Apache-2.0
bonsaidb-filesEfficient large file storage for BonsaiDb6,066MIT OR Apache-2.0
linear_collectionsMap and Set types backed by linear data structures.6,064MIT
open-coroutine-timerThe time utils.6,062LGPL-3.0 OR Apache-2.0
soavecA vector-like data structure for conventient growable Struct-of-Arrays creation and manipulation.6,054MPL-2.0
autocompleteA Rust Auto-complete feature using Trie data structure6,052MIT
foxy_logCommon logging utilities for `foxy`6,051MIT OR Apache-2.0
workspacer-topoAn advanced, async-capable topological sorting crate for managing Rust workspace dependencies.6,043MIT
graphemeAbstractions for working with extended Unicode grapheme clusters6,035MIT OR Apache-2.0
trait-mapRust map for dynamic trait storage and references6,030GPL-3.0-or-later
bones_schemaSimple runtime reflection system designed for scripting.6,028MIT OR Apache-2.0
lookupsImprove the data retrieval operations for collections.6,025MIT
ip2asnA high-performance, memory-efficient Rust crate for mapping IP addresses to Autonomous System (AS) information.6,009MIT
semx_bitops位操作原语与动态大小位图5,996Apache-2.0
dnsloggerPassive dns sniffer. Provides dnslogger binary and a dns parser library.5,990MIT/Apache-2.0
rulidRust Universally Unique Lexicographically Sortable Identifier5,989non-standard
icentral-scoresRust crate for computing and managing betweenness centrality scores in network graphs via efficient algorithms and data…5,989MIT OR Apache-2.0
icentral-parents-mapA Rust crate to manage parent-node relationships with features to add, set, and query parents, suitable for graph-based…5,982MIT OR Apache-2.0
greyjackRust version of GreyJack Solver for constraint continuous, integer, mixed integer optimization problems5,976Apache-2.0
icentral-sigmasA Rust library providing efficient management of sigma values for nodes in graph-based data structures. Includes traits for…5,975MIT OR Apache-2.0
bndpresbufqBounds-preserving, optionally limited, buffer queue5,9720BSD
balatro_tui_widgetsUI widgets for Balatro CLI game5,966non-standard
icentral-path-countsA crate for managing path counts of nodes in graph-like structures, designed for efficient performance in computational graph…5,964MIT OR Apache-2.0
tree-flatTreeFlat is the simplest way to build & traverse a pre-order Tree for Rust.5,960MIT/Apache-2.0
rxqlite-notificationA distributed sqlite database built upon `openraft` ,`sqlx` and `sqlite`.5,959MIT OR Apache-2.0
tree_by_pathA tree data structure featuring nodes addressable using a &Vec<usize> path and avoiding recursion and run-time borrow checking.5,953MIT OR Apache-2.0