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.
ra_ap_la-arenaSimple index-based arena without deletion.1,168,935MIT OR Apache-2.0
surrealdbA scalable, distributed, collaborative, document-graph database, for the realtime web1,162,727non-standard
gxhashGxHash non-cryptographic algorithm1,152,498MIT
ic-utilsCollection of utilities for Rust, on top of ic-agent, to communicate with the Internet Computer, following the Public…1,146,872Apache-2.0
vekGeneric 2D-3D math swiss army knife for game engines, with SIMD support and focus on convenience.1,145,432MIT OR Apache-2.0
fuel-vmFuelVM interpreter.1,141,606BUSL-1.1
fixed-map-deriveA fixed map where storage layout is calculated by a procedural macro.
This crate contains the procedural macros.1,129,616MIT OR Apache-2.0
fixed-mapA fixed map where storage layout is calculated by a procedural macro.1,128,877MIT OR Apache-2.0
rust-fsm-dslMacros for rust-fsm DSL1,127,130MIT
rust-fsmA framework and a DSL for building finite state machines in Rust1,126,330MIT
openai-protocolOpenAI-compatible API protocol definitions and types1,122,197Apache-2.0
spaceA library providing abstractions for spatial datastructures and search1,118,528MIT
openraftAdvanced Raft consensus1,114,964MIT OR Apache-2.0
surrealdb-coreA scalable, distributed, collaborative, document-graph database, for the realtime web1,107,677non-standard
once_mapSingle assignment and lazy maps1,105,131MIT OR Apache-2.0
internal-russh-num-bigintBig integer implementation for Rust1,102,136MIT OR Apache-2.0
merkle-cbtA library for generating efficient Merkle tree and combined Merkle proof based on complete binary tree1,087,865MIT
dockerfileA Rust library for dynamically generating Dockerfiles.1,053,624Apache-2.0
bioA bioinformatics library for Rust. This library provides implementations of many algorithms and data structures that are useful…1,042,538MIT
optionalThis crate supplies a number of Option-like primitive types1,035,234MIT OR Apache-2.0
trie-hardFast implementation of a trie data structure1,017,118Apache-2.0
mac-addrLightweight, no_std compatible MAC address library1,002,569MIT
spdx-expressionSPDX Expression986,419MIT
authenticodeLibrary for working with Authenticode (no-std)974,970MIT OR Apache-2.0
futures-signalsZero cost FRP signals using the futures crate974,953MIT
kv-indexRadix tree implementations for prefix matching and cache-aware routing974,435Apache-2.0
buf-listA list of buffers that implements the bytes::Buf trait973,054Apache-2.0
packed_simdPortable Packed SIMD vectors972,242MIT OR Apache-2.0
smg-meshMesh gossip protocol and distributed state synchronization for Shepherd Model Gateway966,476Apache-2.0
ritelinkedHashMap-like containers that hold their key-value pairs in a user controllable order961,197MIT OR Apache-2.0
moleculeRust bindings for molecule.956,674MIT
fixed-cacheA minimalistic, lock-free, fixed-size cache948,866MIT OR Apache-2.0
slice-dstSlice-based custom DSTs947,484MIT OR Apache-2.0
spdx-rsParse and interact with SPDX Documents945,008MIT
stack-bufVector-like facade for arrays allocated entirely on the stack.942,668MIT OR Apache-2.0
bitstringBitstring traits and implementations941,673MIT
symbol_tableA symbol table that's fast, concurrent, and gives stable references.919,836MIT
cactusImmutable parent pointer tree917,504Apache-2.0/MIT
stable-vecA Vec-like collection which guarantees stable indices and features O(1)
element deletion (semantically similar to…907,963MIT/Apache-2.0
lance-testingA columnar data format that is 100x faster than Parquet for random access.906,122Apache-2.0
sucdsSuccinct data structures in Rust888,721MIT OR Apache-2.0
inline-arrayefficient immutable inlinable byte array863,079MIT OR Apache-2.0
lifetimed-bytesBytes, but with attached lifetime847,290Apache-2.0
ic-certified-mapMerkleized map data structure.847,073Apache-2.0
rusty-moneyParse, format and perform calculations with money safely.838,738MIT
openraft-macrosAdvanced Raft consensus827,304MIT OR Apache-2.0
dyn_size_ofThe library to report approximate amount of memory consumed by variables, including the memory allocated on heap.820,429MIT OR Apache-2.0
svix-ksuidA pure Rust and fully tested KSUID implementation803,072MIT
bitmThe library for bit and bitmap (bit vector) manipulation.798,848MIT OR Apache-2.0
langtagLanguage tags implementation following RFC 5646791,164MIT/Apache-2.0
surrealkvA low-level, versioned, embedded, ACID-compliant, key-value database for Rust784,210Apache-2.0
sorted-index-bufferarray based sorted map with u64 keys783,221MIT OR Apache-2.0
ic-management-canister-typesTypes for calling the IC management canister776,948Apache-2.0
qutexSynchronization mechanisms that rely on lock-free and other non-(thread)blocking techniques, such as Rust futures, to guarantee…773,987MIT
async-oneshotA fast, small, full-featured, async-aware oneshot channel.768,794MPL-2.0
watchA synchronous message passing channel that only retains the most recent value.763,633MIT
phThe library of data structures based on perfect hashing.762,308MIT OR Apache-2.0
concurrent_lruA concurrent LRU cache742,909MIT
crossfirechannels for async and threads741,565Apache-2.0
uxImplement the following non standard integers: u2, u3, u4, u5, u6, u7, u9, u10, u11, u12, u13, u14, u15, u17, u18, u19, u20, u21,…739,914Apache-2.0/MIT
numext-constructorFixed-size uint and hash constructor.735,247Apache-2.0 OR MIT
numext-fixed-uintFixed-size uint types.733,785Apache-2.0 OR MIT
smallbytesSmallBytes = SmallVec + impl BufMut (from the bytes crate)728,953MIT
numext-fixed-uint-coreA internal crate used by numext-fixed-uint.728,589Apache-2.0 OR MIT
numext-fixed-uint-hackA internal crate used by numext-fixed-uint.727,948Apache-2.0 OR MIT
tuple_listCrate for macro-free variadic tuple metaprogramming717,093MIT
triple_bufferAn implementation of triple buffering, useful for sharing frequently updated data between threads712,164MPL-2.0
fuel-deriveFuelVM (de)serialization and compression derive macros for `fuel-vm` data structures.702,338BUSL-1.1
thin-dstThin pointers to inline-slice dynamically sized types686,918MIT OR Apache-2.0
merkletreeLight merkle tree implementation with SPV support and dependency agnostic.685,006BSD-3-Clause
entropy-mapUltra-low latency hash map using minimal perfect hash functions and compact encoding of values, minimizing memory footprint and…684,307Apache-2.0
concreadConcurrently Readable Data-Structures for Rust681,539MPL-2.0
blockstoreAn IPLD blockstore capable of holding arbitrary data indexed by CID679,764Apache-2.0
tar-no-stdLibrary to read Tar archives (by GNU Tar) in `no_std` contexts with zero allocations.
The crate is simple and only supports…676,317MIT
vec-collectionsRust collections that are newtype wrappers around smallvec672,773MIT OR Apache-2.0
drop_guardThe drop_guard crate enables you to implement the Drop trait on any type.
So you can run a closure on any value running out of…672,308MIT/Apache-2.0
bk-treeA Rust BK-tree implementation671,494MIT
exponential-decay-histogramA histogram which exponentially weights in favor of recent values668,540MIT OR Apache-2.0
defaultmapProvides a HashMap with an automatic default for missing keys.654,455MIT
x509-ocspPure Rust implementation of the X.509 Internet Public Key Infrastructure
Online Certificate Status Protocol - OCSP formats as…653,520Apache-2.0 OR MIT
bitbybitEfficient implementation of bit-fields where several numbers are packed within a larger number and bit-enums. Useful for drivers,…653,464MIT
hex_colorA simple, lightweight library for working with RGB(A) hexadecimal colors.650,674MIT OR Apache-2.0
lean_stringCompact, clone-on-write string.645,780MIT
ic-xrc-typesRust support for the exchange rate canister.632,240Apache-2.0
rust-mcp-schemaType-safe implementation of the Model Context Protocol in Rust, designed to reduce errors and accelerate development with…632,005MIT
ntex-bytesTypes and traits for working with bytes (bytes crate fork)618,384MIT OR Apache-2.0
rdf-typesData-structures and traits definitions for RDF.613,366MIT/Apache-2.0
binary-layoutThe binary-layout library allows type-safe, inplace, zero-copy access to structured binary data. You define a custom data layout…604,283MIT OR Apache-2.0
velcroConvenience macros for initializing vectors, hash maps and other Rust collections.603,534Unlicense OR MIT
memintervalA simple interval-tree in Rust made to store memory mappings601,051MIT OR Apache-2.0
tcp-info-sysA library to get TCP_INFO from the kernel for a TCP socket598,611Apache-2.0
crmfPure Rust implementation of the Certificate Request Message Format (CRMF) as
described in RFC 4211598,526Apache-2.0 OR MIT
icalendarStrongly typed iCalendar builder and parser.596,588MIT/Apache-2.0
smallbitsetThis crate provides a series of allocation free sets capable of holding small integer values.594,446MIT
cmpv2Pure Rust implementation of the Certificate Management Protocol (CMP) as
described in RFC 4210594,171Apache-2.0 OR MIT
ic-http-certificationCertification for HTTP responses for the Internet Computer593,777Apache-2.0
mownMaybe owned values. Wrappers for values that can be either owned or borrowed.586,048MIT/Apache-2.0
velcro_macrosProcedural macros used by the `velcro` crate. See `velcro` for documentation.
It is not advised to depend on this crate…584,150Unlicense OR MIT
velcro_coreCore dependencies used by the `velcro` crate. See `velcro` for documentation.
It is not advised to depend on this crate…583,038Unlicense OR MIT
bincode-nextA compact, ultra-fast binary serialization format for Rust, optimized for networking and storage!576,744MIT or Apache-2.0
simple-bytesA small and easy crate to mutate or read u8 slices572,022MIT OR Apache-2.0
ipld-coreIPLD core types553,313MIT OR Apache-2.0
nodejs-semverA node-semver compliant semver implementation in Rust.552,796Apache-2.0
hytraDatastructure for fast multi-threaded updates.550,222MIT OR Apache-2.0
range_union_findA union-find data structure for ranges544,440MIT OR Apache-2.0
typedmapA hash map (dash map). A type of value is defined by trait implemented on key type536,738MIT OR Apache-2.0
slotmap-carefulWrap the slotmap crate and prevent key reuse531,213MIT OR Apache-2.0
array-concatMacros for concatenating const arrays.530,001MIT
id_treeA library for creating and modifying Tree structures.524,797MIT
surrealdb-protocolThe official SurrealDB Rust Client Protocol used by the SurrealDB Rust SDK.511,213BUSL-1.1
json-ldJSON-LD implementation510,412MIT/Apache-2.0
xet-core-structuresCore data structures including MerkleHash, metadata shards, and Xorb objects.504,095Apache-2.0
xet-dataData processing pipeline for chunking, deduplication, and file reconstruction; used in the Hugging Face Xet client tools. …502,980Apache-2.0
hf-xetClient library and tooling for the Hugging Face Xet data storage system.502,572Apache-2.0
tubAsync Pool502,555MIT
sacabaseBase types and functions for suffix arrays and longest substring search499,526MIT
lance-geoLance's geospatial extension providing geospatial UDFs.494,399Apache-2.0
safer-bytessafe, non-panicking wrappers around the 'bytes' crate492,281MIT
lance-namespace-implsLance Namespace Implementations491,611Apache-2.0
small-ord-setA set data-structure represented by a sorted `SmallVec`486,726MIT/Apache-2.0
atomic-arenaGenerational arena that allows reserving keys from other threads484,912MIT OR Apache-2.0
wgGolang like WaitGroup implementation for sync/async Rust.484,191MIT OR Apache-2.0
portgraphData structure library for directed graphs with first-level ports.484,091Apache-2.0
lexprA representation for Lisp data483,618MIT OR Apache-2.0
partitionsA disjoint-sets/union-find implementation that allows for efficient iteration over elements of a set.483,460Apache-2.0
array-const-fn-initInitializes an array with constant values calculated by a `const fn`483,237MIT/Apache-2.0
any_vecType erased vector. Most operations can be done without type knowledge. Mostly zero overhead.479,679MIT OR Apache-2.0
delaunatorA very fast 2D Delaunay triangulation library.471,650ISC
handyA library providing handles and handlemaps469,605Apache-2.0 / MIT
shardtreeA space-efficient Merkle tree with witnessing of marked leaves, checkpointing & state restoration.468,645MIT OR Apache-2.0
i256Optimized implementations of 256-bit signed and unsigned integers.467,993MIT OR Apache-2.0
docker-compose-typesDeserialization and Serialization of docker-compose.yml files in a relatively strongly typed fashion.467,030MIT/Apache-2.0
json-ld-syntaxJSON-LD syntax464,308MIT/Apache-2.0
json-ld-coreJSON-LD core types and traits463,575MIT/Apache-2.0
wasmer-types-nearWasmer Common Types463,212MIT OR Apache-2.0 WITH LLVM-exception
hecsA fast, minimal, and ergonomic entity-component-system library461,986MIT OR Apache-2.0
json-ld-expansionJSON-LD document expansion implementation460,725MIT/Apache-2.0
json-ld-compactionJSON-LD document compaction implementation460,464MIT/Apache-2.0
ic-identity-hsmIdentity implementation for HSM for the ic-agent package.459,257Apache-2.0
concurrent-mapa lock-free linearizable B+ tree455,484MIT OR Apache-2.0
json-ld-context-processingJSON-LD context processing implementation454,047MIT/Apache-2.0
bao-treeBLAKE3 verfiied streaming with custom chunk groups and range set queries453,564MIT OR Apache-2.0
contextualUtility crate to deal with data in context447,564MIT/Apache-2.0
msetA mset / multiset / bag implementation446,706MIT/Apache-2.0
iter-chunksExtend Iterator with chunks446,238MIT OR Apache-2.0
arroyAnnoy-inspired Approximate Nearest Neighbors in Rust, based on LMDB and optimized for memory usage446,110MIT
ggml-quantsGGml defined quantized data types and their quant/dequant algorithm426,172MIT
mpchashA space-efficient (no need for vnodes) multi-probe consistent hashing algorithm423,278MIT
ebrsimple epoch-based reclamation with low cacheline ping-pong413,255MIT OR Apache-2.0
bounded-staticDefines the ToBoundedStatic and IntoBoundedStatic traits408,972Apache-2.0
indexedConvenient allocator for index-linked data structures408,121MIT
stackvectorStackVec: vector-like facade for stack-allocated arrays.407,796MIT/Apache-2.0
qcellStatically-checked alternatives to RefCell and RwLock406,771MIT/Apache-2.0
thin-cellA compact, single-threaded smart pointer combining reference counting and interior mutability401,171MIT
fstrA stack-allocated fixed-length string type400,102Apache-2.0
strettoStretto is a high performance thread-safe memory-bound Rust cache.398,376MIT OR Apache-2.0
golomb-coded-setAn implementation of BIP158 Golomb-Coded Set data structure396,463MIT
nidGenerate and parse Nano IDs396,041MIT OR Apache-2.0
intxDefines new integer types with non-standard but fixed sizes.390,898Apache-2.0/MIT
seedable_hashThe library for calculating seedable hashes and fast reduction of their ranges.388,244MIT OR Apache-2.0
topo_sortA 'cycle-safe' topological sort for a set of nodes with dependencies388,121MIT OR Apache-2.0
milhousePersistent binary merkle tree387,284Apache-2.0
arc-atomicProvides an atomic pointer to an `Arc`384,455MIT
aarcAn atomically updatable Arc for lock-free concurrency.381,303MIT
ic-ledger-typesTypes for interacting with the ICP ledger canister.377,260Apache-2.0
bounded-static-deriveMacro to derive ToBoundedStatic and IntoBoundedStatic traits377,055Apache-2.0
takeableContainer type that allows for temporarily moving out of the container, or permanently moving out and invalidating the container.377,042MIT/Apache-2.0/Unlicense
char_indexA crate for efficient charwise indexing into a string374,140MPL-2.0
lance-tokenizerTokenizer abstractions and implementations for Lance372,828Apache-2.0
hash-iterIterator producing sequence of hash values for a given input (using double hashing technique)367,716MIT
bittleZero-cost bitsets over native Rust types364,897MIT OR Apache-2.0
fixed-macroMacros for creating fixed-point constants for types in the `fixed` crate.363,789MIT OR Apache-2.0
probabilistic-collectionsVarious implementations of collections that use approximations to improve on running time or memory,
but introduce a certain…363,325MIT OR Apache-2.0
loro-rleA internal library of loro for storing and manipulating run-length encoded data. Do not use it directly.356,478MIT
segment-treeQuickly perform interval queries or modifications.356,100MIT
qp-trieAn idiomatic and fast QP-trie implementation in pure Rust, written with an emphasis on safety.355,606MPL-2.0
bloom2Fast, compressed, 2-level bloom filter and bitmap353,654BSD-3-Clause
loro-deltaLoro internal library. It's used as a delta between two versions of text or lists. It's also an efficient Rope.352,827MIT
chunky-vecA pin safe, append only vector never moves the backing store for an element.350,633Apache-2.0/MIT
small-mapAn inline SIMD accelerated hashmap designed for small amount of data.343,194MIT/Apache-2.0
queue-filequeue-file is a lightning-fast, transactional, file-based FIFO339,118Apache-2.0
postgres-from-row-deriveInternal proc-macro crate for postgres-from-row338,987non-standard
ipnet-trieIPv4 and IPv6 network fast lookup trie.338,768MIT
postgres-from-rowDerivable trait that allows converting a postgres row to a struct338,404non-standard
graafWork with directed graphs.336,028MIT OR Apache-2.0
multi_index_mapMultiIndexMap: A generic multi index map inspired by boost multi index containers334,603MIT
surrealmxAn embedded, in-memory, lock-free, transaction-based, key-value database engine329,434Apache-2.0
mycelium-bitfieldStructured bitfields, courtesy of Mycelium.329,249MIT
indxvecVecs sorting, merging, indexing, ranking, searching, reversing, intersecting, printing, etc.328,845Apache-2.0
ebml-iterableThis crate provides an iterator over EBML encoded data. The items provided by the iterator are Tags as defined in EBML. The…317,774MIT
webm-iterableThis crate extends the ebml-iterable library to provide an iterator over webm data. It provides a Matroska specification…316,978MIT
multi_index_map_deriveMultiIndexMap: A generic multi index map inspired by boost multi index containers316,397MIT
bumparaw-collectionsA small set of bumpalo-backed collections for low-level operations311,881MIT
generic_singletonA library crate allowing for generic singleton patterns309,534MIT OR Apache-2.0
oxiblas-matrixMatrix types and views for OxiBLAS308,814Apache-2.0
num-bigfloatIncreased precision floating point numbers implemented purely in Rust.308,229MIT
jsonbbA binary representation of json value, optimized for parsing and querying.302,401Apache-2.0
erased_setA set of erased types302,015MIT
tokio-par-utilUtilities for running computations in parallel on top of Tokio301,857Apache-2.0
bloom-filtersRust port of https://github.com/tylertreat/BoomFilters300,689Apache-2.0 OR MIT