indexmap-rs/indexmap
A hash table with consistent order and fast iteration; access items by key or sequence index observed · 2026-08-28
Health v2 · maintenance only
73/100
- Activity 91
- Release rhythm 35
- Longevity 100
Flags: no_releases
How is this computed?
round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10) — computed 2026-09-03. Adoption (stars, forks) is never an input.
- gap_med: n/a
- age_days: 3639
- days_rel: n/a
- days_push: 54
- n_releases_24m: 0
Adoption not part of the score
2413 stars · 190 forks observed · 2026-08-28
What it is AI-extracted, prompt v1, taxonomy v1, 2026-08-30, confidence not recorded
IndexMap is a pure-Rust hash table (with a companion IndexSet) that preserves insertion order, iterates quickly over compact storage, and lets entries be accessed by key or by numeric index. It is a drop-in replacement for std HashMap/HashSet built on hashbrown, with optional serde, rayon, and no_std support.
Use cases
- rust hashmap that preserves insertion order
- iterate map entries in a deterministic order independent of hashing
- drop-in replacement for std HashMap with sorted iteration and pop
- look up map entries by numeric index as well as by key
- ordered set implementation in Rust
- no_std-compatible hash map for embedded or constrained targets
- serde-serializable ordered map or set
When to choose
- You need iteration order to depend on insertion (or explicit sorting) rather than hash values
- You want std HashMap/HashSet API compatibility plus extras like pop, sorting, and index-based access
- Your workload iterates over the whole map frequently and benefits from dense, cache-friendly storage
- You need flexible key equality for borrowed vs owned keys via the Equivalent trait
When to avoid
- You only care about raw lookup throughput and never iterate - std HashMap can be faster due to key-value locality
- You need strict ordering guarantees even after removals without paying O(n) shift_remove costs - consider the ordermap wrapper instead
- You need a concurrent or thread-safe shared map - IndexMap is not synchronized
- You need hash-based probabilistic structures or memory-bounded caches rather than an exact ordered map
Facets
library · maturity stable
developer-tools developer-tools rust cross-platform embedded data-structures ordered-map hashmap hashset insertion-order no-std indexmap containers algorithms
10 sources
- readme: https://github.com/indexmap-rs/indexmap · fetched 2026-08-28 · f002494bf69e
- homepage: https://docs.rs/indexmap/ · fetched 2026-08-29 · 9d4bd6f11e4f
- site_page: https://docs.rs/ · fetched 2026-08-29 · 38444eb0fe60
- site_page: https://docs.rs/crate/indexmap/latest · fetched 2026-08-29 · 6f52a219e998
- site_page: https://docs.rs/crate/indexmap/latest/features · fetched 2026-08-29 · 8c4731b33e3f
- site_page: https://docs.rs/about · fetched 2026-08-29 · 29ab7986fbf5
- site_page: https://docs.rs/about/badges · fetched 2026-08-29 · 6588cac258af
- site_page: https://docs.rs/about/builds · fetched 2026-08-29 · 811231ca4680
- site_page: https://docs.rs/about/metadata · fetched 2026-08-29 · 0dcdccb2b2b2
- site_page: https://docs.rs/about/redirections · fetched 2026-08-29 · 1b1efd93105f
Member repositories
| Repository | Role | Health v2 |
|---|---|---|
| indexmap-rs/indexmap | main | 73 |
For agents
markdown · JSON · MCP: product_card(name="indexmap-rs/indexmap")
Data as of 2026-08-30T08:39:29.467469+00:00 · Report a problem