rust-lang/hashbrown

Rust port of Google's SwissTable hash map

Hosted by Rust

View on GitHub ↗Jump to charts ↓Open shareable report →

rust-lang/hashbrown has 3k+ stars and 350+ forks on GitHub, is written in Rust, and was last pushed on Oct 13, 2026. Data as of . Signed-in members get hourly updates — create a free account.

Summary Information

Updated 1 hour ago
Type:Library / SDKCategory(s):Core & Utility LibrariesLanguages & Runtimes
Added to GitGenius on October 9th, 2026
Created on October 28th, 2018
Open Issues & Pull Requests: 86 (+0)
GitHub issues: Enabled
Number of forks: 358
Total Stargazers: 3,004 (+0)
Total Subscribers: 30 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 1.7 hours
Mean response time: 70.9 days
90th percentile: 10.8 days
Tracked items: 66

Maintainer activity

1 person did triage or write work on this repository in the last 12 months.

Counts unlabeled, assigned, unassigned, milestoned, demilestoned, locked, unlocked over the last 12 months. These are issue and pull request events that require triage or write permission. Commits and code review are not counted. labeled and renamed are excluded because GitHub issue forms record the issue author as the actor. Figures from October 18, 2026. This count is not comparable across projects: each project's automation decides which of these events a person emits. How this is counted.

How this project is maintained

95% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Three people close 51% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 22
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 486 days
Stale 30+ days: 21
Stale 90+ days: 19

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

No label distribution available yet.

Most active issues this week

Sign in to see which issues are moving.
Sign in

Detailed Description

hashbrown is a Rust port of Google's SwissTable hash map that serves as a drop-in replacement for the standard library's HashMap and HashSet types.

The project addresses the need for high-performance hash map implementations in Rust, particularly in environments where the standard library is unavailable. It implements Google's SwissTable algorithm, which uses a compact metadata layout with only one byte of overhead per entry instead of eight, and employs SIMD lookups to scan multiple hash entries in parallel. The implementation uses foldhash as its default hasher, which is significantly faster than SipHash, though it provides lower HashDoS resistance. The tool works in no_std environments when paired with the alloc crate and does not allocate memory for empty hash maps.

Developers should choose this crate if they need hash map performance in embedded systems, kernels, or other no_std contexts where the standard library is unavailable. It is also suitable for applications where the performance gains from SwissTable's design justify the trade-off of reduced HashDoS resistance compared to SipHash. The standard library has incorporated this implementation since Rust 1.36, so the algorithm's correctness and maturity are well-established; however, this crate remains relevant for no_std use cases and for those who want to customize the hasher or take advantage of features like rayon parallel iterator support.

Development activity shows consistent engagement with the codebase. The project maintains a changelog documenting updates. Multiple optional features are available, including nightly-only optimizations, serialization support via serde, parallel iteration through rayon, and allocator customization. The crate offers inline hints through an optional feature to improve runtime performance, and supports the equivalent trait for customized comparisons. A deprecated RawEntry API is available behind a feature flag for backward compatibility.