hodgepodge
Ready-made Rust datasets for teaching, prototypes, simulations, and test fixtures. 56 compact enums cover colors, chemistry, anatomy, biology, geography, geologic time, calendars, and games. Optional taxonomy adds 80,868 animal species.
Rust 1.71+. No default dependencies.
Quick start
[]
= "0.4"
use ;
assert_eq!;
assert_eq!;
assert_eq!;
assert_eq!;
assert_eq!;
assert_eq!;
for element in ALL
Every enum dataset supports comparison, hashing, display, parsing, ALL, COUNT,
label(), and source/scope metadata through INFO. Parsing accepts canonical
variant names without spaces, ignoring ASCII case; named constructors handle
external codes. Relationships connect bones to regions, epochs to periods,
codons to amino acids, countries to subdivisions, and more.
Optional features
| Feature | Adds |
|---|---|
serde |
Serialization for dataset enums, cards, codon meanings, and taxonomy keys |
rand |
Uniform sampling and deck shuffling with a caller-supplied rand 0.9 RNG |
strum |
Iterator/count traits; also enabled by legacy enum-iter and enum-count |
taxonomy |
Bundled animal records and nested species paths; no runtime network access |
Enable features with hodgepodge = { version = "0.4", features = ["taxonomy"] }.
Animal taxonomy
#
#
This dated selection includes every source ancestor, not every animal species.
Taxonomy adds substantial compile/documentation cost; its source files remain in
the download even when disabled. For persistent taxonomy identity, use
Taxon::key(); serialized enum names/indexes may change between snapshots.
More
- API reference and usage guide
- Dataset scope and sources
- Migration guide and changelog
- Runnable examples and contributing
Software: MIT OR Apache-2.0. Taxonomy classification: CC BY 4.0; Wikidata enrichment: CC0. Retain the bundled attribution.