What's here
Every public item in the Rust standard library — 2,028 structs, enums, traits, functions, macros, constants, and primitives — gets its own page. Each page includes a plain-English explanation of what the item does, when to reach for it, two annotated code examples, common pitfalls, performance notes, and links to related items in the same module.
Beyond the per-item reference, RustDocs Hub offers long-form guides for the most important modules — collections, iter, io, fs, sync, thread, option, result, fmt, str, mem, ptr, cell, env, time, process, path, net, error, marker, num, cmp, slice, pin, future, task, panic, convert, default — covering the design tradeoffs you actually care about when picking between similar types.
Where the data comes from
The reference index is seeded from the official Rust standard library documentation at doc.rust-lang.org/std/all.html. Every link points back to the canonical source. The annotated prose, examples, and pitfalls are written by hand.
Stack
RustDocs Hub is server-rendered PHP 8 with no JavaScript bundle, no build step, and no runtime database. Pages are sub-millisecond to render and fully indexable by every search engine. View source — every word you read is in the HTML. The one exception is /search, which uses a small vanilla-JS lookup over a bundled on-site JSON index (no external service, no tracking) so you can filter all 2,028 items client-side.
Third-party crates directory — methodology
Added July 2026. This is a separate section from the hand-written std-library reference above: a metadata-only directory of third-party crates published on crates.io, the Rust package registry. It is auto-generated from crates.io’s own published data — no annotated prose, no hand-written examples, no editorial judgment about crate quality.
Pipeline
crates.io publishes a full database dump every 24 hours at static.crates.io/db-dump.tar.gz (CSV tables: crates, versions, categories, keywords, and the crate/category/keyword join tables), per its own Data Access Policy. RustDocs Hub fetched the dump timestamped 2026-07-25T02:00:36Z and joined, for each of the 305,250 crates present: the crate’s own record (name, description, homepage, documentation, repository, last-updated date) with its current default version’s record (declared license string, version number), its total cumulative download count, and its category and keyword memberships. This snapshot is a one-time build for this pass, not yet on an automatic refresh schedule — a future refresh would re-run the same join against a newer dump.
Fields rendered
Crate name, description (as declared by the crate author in Cargo.toml, rendered verbatim/untruncated on each crate’s own page; truncated to ~130 characters only on list/table rows, for layout), total downloads, current version number, declared license string (shown exactly as the crate declares it — no interpretation or normalization), homepage/repository/documentation links (only when the crate provides them — a blank field is omitted, never guessed), categories and keywords (as crates.io’s own taxonomy assigns them), and a last-updated date.
Fields withheld
Per crates.io’s Data Access Policy — which grants indexing/tooling use of its data but asks that re-users link out rather than re-host each crate’s own code — this directory does not render or store each crate’s README body text or source code (the dump’s readme column is dropped entirely before any page is built). Also withheld: internal database IDs, the full per-version history (only the current default version is shown), the dependency graph, and publisher account information (usernames, GitHub org data) — none of that is needed for a metadata directory and some of it is account-identifying information out of scope for this build. Every crate page links back to the crate’s own canonical crates.io page for its full README, source links, and version history.
Individual page threshold
305,250 individual pages would exceed this site’s page-budget cap, so only crates with at least 100,000 cumulative downloads (per crates.io’s own download counter) — a plain, disclosed, non-cherry-picked cutoff — get a dedicated profile page at /crate/<name>/ (20,086 crates qualify). Every one of the 305,250 crates, including those below the threshold, still appears in the alphabetical directory and any category listing it belongs to; rows for crates without a dedicated page link directly out to that crate’s own crates.io page instead of a local page.
Attribution
Crate metadata: © respective crate authors, distributed via the crates.io database dump under crates.io’s Data Access Policy. Cite as: crates.io database dump, data as of 2026-07-25. Each crate’s own license (as declared in the “License” field on its page) governs that crate’s source code — RustDocs Hub does not grant, alter, or interpret any crate’s license.
Corrections
All fields here are pulled mechanically from crates.io’s own dump — if a crate’s metadata here looks wrong, it almost always means crates.io’s own record is different from what you expect (crate authors control their own Cargo.toml fields and can fix them by publishing an updated version). RustDocs Hub does not currently have a dedicated contact form or feedback address for either this section or the rest of the site — that is a known gap, disclosed here rather than papered over with an address that doesn’t exist.