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.
esrsA Prima.it-opinionated library to achieve cqrs/es120,712MIT OR Apache-2.0
disruptorLow latency inter-thread communication via a ringbuffer (inspired by the LMAX Disruptor).120,666MIT
index-mapA map with automatically generated usizes as keys120,397MIT
bpe-openaiPrebuilt fast byte-pair encoders for OpenAI.119,787MIT
awintArbitrary width integers119,065MIT OR Apache-2.0
awint_extExternally allocating `awint` functionality118,791MIT OR Apache-2.0
static-tomlEffortlessly embed TOML files into your Rust code as static data with custom data structures.118,502MIT
vortex-sessionSession object for Vortex118,282Apache-2.0
awint_macrosAccompanying procedural macros to `awint`117,169MIT OR Apache-2.0
suxA pure Rust implementation of succinct and compressed data structures116,231Apache-2.0 OR LGPL-2.1-or-later
bytesstrAn immutable reference-counted UTF8 String115,985MIT
triple_arenaRegular, Chain, Surjection, and Ordered Arenas supporting non-Clone types, deletion, and more115,664MIT OR Apache-2.0
array_map_deriveMap backed array for fixed size keys with O(1) performance115,568MIT OR Apache-2.0
rust-ocppocpp 1.6, 2.0.1 and 2.1 libraries115,427MIT OR Apache-2.0
wtoolsSingle entry-point for collection utilities. Re-exports collection_tools: variadic constructors and unified HashMap/HashSet/Vec…114,091MIT
cache-advisorscan-resistant concurrent cache eviction manager113,368MIT OR Apache-2.0
chewdataExtract Transform and Load data111,868MIT OR Apache-2.0
ndhistogrammulti-dimensional histogramming for Rust111,363MIT OR Apache-2.0
rlgA near-lock-free structured logging library for Rust. Sub-microsecond
ingestion via a 65k-slot ring buffer (LMAX Disruptor…111,187MIT OR Apache-2.0
dbutilsUtils for developing databases108,696MIT OR Apache-2.0
leaseObject pool that leases values and automatically returns them with async support108,661MIT OR Apache-2.0
balanced-tree-indexUtilities for constant-time manipulation of a complete binary tree with a flat in-memory representation.108,541GPL-3.0
bipbufferA Rust implementation of Simon Cooke's Bip-Buffer108,121Apache-2.0
mc-oblivious-traitsTraits and interfaces for components related to Oblivious data structures107,350GPL-3.0
lance-test-macrosA columnar data format that is 100x faster than Parquet for random access.106,832Apache-2.0
hash_ringConsistent Hashing library for Rust106,143MIT
orderedA wrapper for adding arbitrary partial/total order to a type.105,560CC0-1.0
fpdecDecimal floating-point arithmetic.105,389non-standard
static_aabb2d_indexFast static spatial index data structure for 2D axis aligned bounding boxes104,296MIT OR Apache-2.0
evicting_cache_mapAn Evicting LRU cache supporting prune hooks104,283BSD-2-Clause
gpt_disk_typesGPT (GUID Partition Table) disk data types no_std library103,480MIT OR Apache-2.0
walker-commonCommon functionality for SBOM and CSAF walker103,472Apache-2.0
modular-bitfield-msb-implBitfields for structs that allow for modular use of enums. MSB-first version.103,124MIT/Apache-2.0
hierarchical_hash_wheel_timerA low-level timer implementation using a hierarchical four-level hash wheel with overflow.103,109MIT
modular-bitfield-msbAllows to easily define bitfield types with modular building blocks. MSB-first version.102,446MIT/Apache-2.0
ic-cdk-optimizerWASM Optimizer for the IC CDK (experimental).102,284Apache-2.0
bc-urUniform Resources (UR) for Rust.101,832BSD-2-Clause-Patent
iso4217-parserParser for ISO 4217 XML Data101,677Apache-2.0
substrait-explainExplain Substrait plans as human-readable text.101,423Apache-2.0
minimum_redundancyThe library to encode and decode data with binary or non-binary Huffman coding.100,808MIT OR Apache-2.0
redoUse the undo crate instead.100,763MIT OR Apache-2.0
zipcodesQuery U.S. zipcodes without SQLite, with the full dataset embedded at compile time.100,664MIT
ruvector-mincutWorld's first subpolynomial dynamic min-cut: self-healing networks, AI optimization, real-time graph analysis100,462MIT
mc-oblivious-ramImplementations of Oblivious RAM data structures99,912GPL-3.0
fhir-modelFHIR Software Development Kit. Library for interfacing with FHIR.99,560MIT
microkelvinA crate for tree traversal over annotated data structures99,546MPL-2.0
sbom-walkerA library to work with SBOM data99,350Apache-2.0
mc-oblivious-mapImplementation of Oblivious Hash Map data structures on top of Oblivious RAM99,198GPL-3.0
kv-trie-rsKV capable prefix trie library based on LOUDS.99,147MIT OR Apache-2.0
bevy_hecsBevy fork of hecs: a fast, minimal, and ergonomic entity-component-system99,068Apache-2.0
machine-vision-formatsTypes and traits for working with raw image data from machine vision cameras99,038MIT OR Apache-2.0
similariMachine learning framework for building object trackers and similarity search engines97,154Apache-2.0
good_memory_allocatorA blazingly fast and memory efficient memory allocator to be used in `no_std` environments.96,883MIT
paginateA framework agnostic pagination crate, that is especially suited for databases, slices and collections. Paginate calculates the…96,798Apache-2.0
string-offsetsConverts string offsets between UTF-8 bytes, UTF-16 code units, Unicode code points, and lines.96,514MIT
lrumapA safe Least Recently Used (LRU) cache implementation with ordered and unordered support.96,495MIT OR Apache-2.0
greentic-typesShared primitives for Greentic: TenantCtx, InvocationEnvelope, NodeError, ids.96,089MIT
beach_mapImplementation of a slotmap95,246MIT OR Apache-2.0
trk-ioTrackVis (*.trk) reader and writer95,218BSD-2-Clause
varuintVariable length signed and unsigned integer types95,154MIT
gpt_disk_ioGPT (GUID Partition Table) disk IO no_std library95,098MIT OR Apache-2.0
geo-indexFast, immutable, ABI-stable spatial indexes.94,907MIT OR Apache-2.0
tagged-typesDefine strongly typed wrappers over base types with minimal boilerplate94,860MIT
ordqOrder keeping job processing queue94,816MIT OR Apache-2.0
tagged-types-deriveDefine derive procmacro for tagged types94,416MIT
any_keyDynamically typed keys for associative arrays.92,636MIT/Apache-2.0
es-entity-macrosProc macros for es-entity92,479Apache-2.0
miniconfSerialize/deserialize/access reflection for trees92,360MIT
planus-lexerInternal lexer library for planus.92,313MIT/Apache-2.0
es-entityEvent Sourcing Entity Framework91,851Apache-2.0
planus-typesInternal type library for planus.91,742MIT/Apache-2.0
arm-ffaArm Firmware Framework for Arm A-profile support library91,599MIT OR Apache-2.0
codeqCodec trait91,531MIT OR Apache-2.0
vecsetA vector-based sorted map, set and keyed-set implementation91,380MIT OR Apache-2.0
swap-buffer-queueA buffering MPSC queue.91,369MIT
fm-indexFM index and its variant implementations for Rust.91,338MIT OR Apache-2.0
rust-3d2D/3D library written in rust91,102MIT
im-listsPersistent unrolled linked lists and vlists90,999MIT OR Apache-2.0
fpdec-coreCommon constants and functions for crate fpdec.90,839non-standard
ctrf-rsA reporter for Common Test Report Format (CTRF) in Rust90,789MIT
libafl_wideA crate to help you go wide, but for libafl90,429Zlib OR Apache-2.0 OR MIT
scarletColors and color spaces made simple90,261Apache-2.0
rexsgdataScatter-Gather Data Descriptors90,008Apache-2.0 OR MIT
fixed-slice-vec`FixedSliceVec` is a dynamic length Vec with runtime-determined maximum capacity backed by a slice.89,798Apache-2.0
planus-translationInternal translation library for planus.89,656MIT/Apache-2.0
stofData Runtime. JSON that runs.89,452Apache-2.0
fpdec-macrosMacros supporting decimal floating-point arithmetic.89,099non-standard
spatialbenchBlazing fast pure Rust Spatial Bench data generation library.88,819Apache-2.0
spatialbench-arrowSpatialBench data generator into Apache Arrow format88,699Apache-2.0
raft-logRaft log implementation88,586MIT OR Apache-2.0
surrealcsThe SurrealCS client code for SurrealDB88,300BUSL-1.1
surrealcs-kernelThe SurrealCS kernel code for SurrealDB88,212BUSL-1.1
planus-codegenInternal codegen library for planus.86,525MIT/Apache-2.0
libpnaPNA(Portable-Network-Archive) decoding and encoding library86,348Apache-2.0 OR MIT
traversalGeneric and lazy tree traversal algorithms85,901MIT
rotblRead Only Table85,650MIT OR Apache-2.0
user-errorUserFacingError is an error crate that allows you to pretty print your errors and error chain for consumption by the end user. If…85,559non-standard
bidir-mapBidirectional map implementation for Rust85,558MIT
fhir-sdkFHIR Software Development Kit. Library for interfacing with FHIR.85,498MIT
typed-generational-arenaA safe arena allocator that supports deletion without suffering from the ABA problem by using generational indices. Now with…85,347MPL-2.0
rarena-allocatorLock-free ARENA allocator which can be used in both memory and on-disk.85,161MIT OR Apache-2.0
compact-genomeRepresentation of genomes84,863BSD-2-Clause
detachhelper type for being able to detach/reatach a member item84,582Apache-2.0
tmpdirUseful to create temp directories and copy their contents on completion
of some action. Tmp dirs will be created using…84,493MIT
surrealdb-collectionsSorted vec-backed map and set types for SurrealDB (internal API).84,225non-standard
surrealdb-strandA scalable, distributed, collaborative, document-graph database, for the realtime web84,202non-standard
rc-borrowBorrowed forms of Rc and Arc.84,108MIT OR Apache-2.0
imap-typesMisuse-resistant data structures for IMAP84,045MIT OR Apache-2.0
chat-promptsChat prompt template83,725Apache-2.0
modqlRust implementation for Model Query Language support83,675MIT OR Apache-2.0
slabigatorA fixed-capacity linked list with stable element addressing and no dynamic allocations83,373MIT OR Apache-2.0
crawdadCrawdad: ChaRActer-Wise Double-Array Dictionary83,078MIT OR Apache-2.0
merkle_lightLight merkle tree implementation with SPV support and dependency agnostic.83,004BSD-3-Clause
rustic_corerustic_core - library for fast, encrypted, deduplicated backups that powers rustic-rs82,573Apache-2.0 OR MIT
queue-extThe extended feature of the queue can convert the pop() function of the queue to Stream and the push() function to Sender.82,197MIT OR Apache-2.0
incremental-topoData structure to maintain an incremental topological ordering over a collection of values81,829MIT OR Apache-2.0
arccstrThread-safe, reference-counted null-terminated immutable strings.81,523MIT OR Apache-2.0
hdrsampleA port of HdrHistogram to Rust81,349MIT/Apache-2.0
number-generalA generic number type for Rust which supports basic math and (de)serialization.81,000Apache-2.0
sumGeneral-purpose sum types.80,885MIT OR Apache-2.0
spider_agent_typesPure data types and constants for spider_agent automation. Zero heavy dependencies.80,670MIT
mzdataA library to read mass spectrometry data formats and a data model for mass spectra80,384Apache-2.0
lance-deriveDerive macros for Lance80,117Apache-2.0
lance-arrow-scalarArrow scalar type with Ord, Hash, and Eq support80,027Apache-2.0
lance-selectRow-selection masks and index-result algebra for Lance79,994Apache-2.0
lance-arrow-statsStatistics accumulator for Arrow arrays (min, max, null_count, nan_count)79,983Apache-2.0
feldera_rust_decimalDecimal number implementation written in pure Rust suitable for financial and fixed-precision calculations.79,659MIT
llm_models_spiderAuto-updated registry of LLM model capabilities (vision, audio, etc.)79,474MIT
diesel-enumInterop between your enums and your database with diesel78,886MIT
pearlPearl is a low level blob-based I/O library78,799MIT
blobBlob serialization/deserialization utilities78,357MIT
diff_jsonA powerful JSON diff library for Rust78,169MIT OR Apache-2.0
typed-slabTyped wrapper for Slab78,137MIT
afarrayConvenience methods for working with ArrayFire arrays in Rust78,125Apache-2.0
asimov-sdkASIMOV Software Development Kit (SDK) for Rust77,554Unlicense
csaf-cliA CLI to work with CSAF data77,337Apache-2.0
reactive-signalsreactive-signals is a dx-first scope-based fine-grained reactive system.76,789MIT
slab_treeA vec-backed tree structure with tree-specific generational indexes.76,774MIT
ndarray-parallelParallelization for ndarray using rayon.
(Deprecated - use ndarray with rayon directly.)76,342MIT/Apache-2.0
rangelistA representation of sets as lists of inclusive ranges76,305MPL-2.0
fedimint-aleph-bftAlephBFT is an asynchronous and Byzantine fault tolerant consensus protocol aimed at ordering arbitrary messages (transactions).…76,197Apache-2.0
alloc-checkedCollections that don't panic on alloc failures75,977MIT OR Apache-2.0
dbspContinuous streaming analytics engine75,838MIT OR Apache-2.0
biodivine-lib-bddA simple thread-safe implementation of basic binary decision diagrams.75,606MIT
pikkrJSON Parser which picks up values directly without performing tokenization in Rust75,521MIT/Apache-2.0
csfThe library of compressed static functions (maps) that use perfect hashing and value compression.75,292MIT OR Apache-2.0
scalable_cuckoo_filterA variant of Cuckoo Filter whose size automatically scales as necessary75,042MIT
span-mapA data structure for efficiently managing sets of values over spans/ranges74,921MIT OR Apache-2.0
small-fixed-arrayA crate providing fixed length immutable collections with a low memory footprint.74,632MIT
interavlAn optimised interval tree for efficient interval stabbing74,454Apache-2.0
linearizeTypes that are enumerable and an array-backed map74,447MIT OR Apache-2.0
bool_extA crate which defines and implements a complete set of `Option`/`Result`-style Boolean functional combinators on Rust's `bool`…74,009MIT OR Apache-2.0
modql-macrosMacros for modql. Not intended to be used directly.73,995MIT OR Apache-2.0
vortex-exprVortex Expressions73,475Apache-2.0
feattle-coreFeatture toggles for Rust, extensible and with background synchronization and administration UI73,301MIT OR Apache-2.0
recursive_arrayan implementation of arrays using recrusive data structures to avoid limitations of the rust compiler72,722MIT
timed-mapLightweight map implementation that supports expiring entries and fully compatible with both std and no_std environments.72,461MIT
serde-varsConveniently expose (environment) variables to your serde based data structures, like configurations.72,275MIT
rust-claccRust implementanion of a CL universal accumulator72,133MIT
stacRust library for the SpatioTemporal Asset Catalog (STAC) specification72,042MIT OR Apache-2.0
polytypeA Hindley-Milner polymorphic typing system.71,927MIT
stacked_errorshigh level error propogation with software controlled backtraces71,637MIT OR Apache-2.0
sklA lock-free thread-safe concurrent ARENA based (heap backend or memory map backend) skiplist implementation which helps develop…71,344MIT OR Apache-2.0
async-change-trackerreactive change notifications using futures71,289MIT/Apache-2.0
desyncA hassle-free data type for asynchronous programming70,933Apache-2.0
vpsearchVantage Point Tree search algorithm for fast nearest neighbour search in multi-dimensional metric spaces.70,919BSD-2-Clause
cacheline-efPer-cacheline encoding of sorted integer sequences70,492MIT
feattle-uiFeatture toggles for Rust, extensible and with background synchronization and administration UI70,146MIT OR Apache-2.0
wccg-modelsWCCG Data69,750MIT OR Apache-2.0
fidFID (Fully Indexable Dictionary) implementation for Rust69,659MIT OR Apache-2.0
starlingThis tree structure is a binary merkle tree with branch compression via split indexes.69,439MIT/Apache-2.0
traitgraphAbstracting over different graph representations68,735BSD-2-Clause
enum_metaAdd metadata to Enum Variants68,728MIT/Apache-2.0
rc-u8-readerA tiny implement for reading `u8` data from a reference counted instance.68,695MIT
embed-collectionsA collection of memory efficient and intrusive data structures68,543MIT OR Apache-2.0
feattleFeatture toggles for Rust, extensible and with background synchronization and administration UI68,438MIT OR Apache-2.0
async-raftAn async implementation of the Raft distributed consensus protocol.68,353MIT/Apache-2.0
cw-semverParser and evaluator for Cargo's flavor of Semantic Versioning68,215MIT OR Apache-2.0
timer_listA list of timed events that will be triggered sequentially when the timer expires67,749GPL-3.0-or-later OR Apache-2.0 OR MulanPSL-2.0
chronologicTime constraint reasoning (scheduling...)67,649MIT
ptrieGeneric trie data structure implementation (prefix tree) with support for different key and value types,
and functions to search…67,355non-standard
quantitiesUnit-safe computations with quantities.67,177non-standard
matreexA simple matrix implementation.67,138MIT
molecule-codegenCode generator for molecule.67,073MIT
serde_eitherSimple set to enums to deserialize and serialize data that can either be string, struct or vec66,886MIT OR Apache-2.0
feattle-syncFeatture toggles for Rust, extensible and with background synchronization and administration UI66,815MIT OR Apache-2.0
tuplezTuples represented in recursive form66,677MIT OR Apache-2.0
slotmapdorlp/slotmap fork where serialization cycle doesn't change observable behavior66,510Zlib
rust_decimal_macro_implsShorthand macros to assist creating Decimal types. Do not depend on this directly; use rust_decimal_macros65,703MIT
sourmashtools for comparing biological sequences with k-mer sketches65,262BSD-3-Clause
boolvecA vector of boolean stored contiguously in memory.65,258MIT
either-or-bothThe enums EitherOrBoth with the three variants Left, Right, Both and Either with the Left and Right variants64,887Apache-2.0 OR MIT
minivecA version of Vec that's only the size of a single pointer64,778BSL-1.0
hypercoreSecure, distributed, append-only log64,719MIT OR Apache-2.0
bitset-fixedBitset for DP.64,565MIT
libhaystackRust implementation of the Haystack 4 data types, defs, filter, units, and encodings64,270BSD-3-Clause
pnaPNA(Portable-Network-Archive) decoding and encoding library63,791Apache-2.0 OR MIT
usvUSV: Unicode Separated Values (USV) for data markup. This is for spreadsheets, databases, content management, and more. This…63,690MIT OR Apache-2.0 OR GPL-2.0 OR GPL-3.0
compact_arenaA crate with some types to allow indexed arenas with small memory footprint63,623MIT OR Apache-2.0
bitlabExtracting a range of bits from a binary data source63,439MIT