{"adoption": {"forks": 567, "observed_at": "2026-08-28T04:09:37.446654+00:00", "stars": 6175}, "canonical_url": "https://ross.abutalabs.com/products/magic_enum", "card": {"archived": false, "artifact_type": "library", "description": "Static reflection for enums (to string, from string, iteration) for modern C++, work with any enum type without any macro or boilerplate code", "domain": ["developer-tools", "programming-languages"], "enriched": true, "function": ["serialization", "developer-tools"], "health_score": 96, "homepage": null, "language": "C++", "license": "MIT", "license_family": "permissive", "maturity": "stable", "member_repos": ["Neargye/magic_enum"], "name": "Neargye/magic_enum", "platform": ["cpp", "cross-platform"], "pushed_at": "2026-08-11T16:02:34+00:00", "repo": "Neargye/magic_enum", "stars": 6175, "tags": ["header-only", "reflection", "enums", "metaprogramming", "enum-to-string", "string-to-enum", "no-dependencies"], "topics": ["cplusplus", "cplusplus-17", "c-plus-plus", "c-plus-plus-17", "cpp", "cpp17", "enum-to-string", "string-to-enum", "serialization", "reflection", "metaprogramming", "header-only", "single-file", "no-dependencies", "enum"], "urls": [], "use_cases": ["convert enum value to its name string in C++", "parse a string into an enum value", "iterate over all values of an enum type", "get the count of enum entries at compile time", "serialize enums to text for logging or config files", "case-insensitive enum name lookup"], "what_it_is": "A header-only C++17 library providing static reflection for enums, enabling conversion between enum values and strings, iteration over enum values, and related utilities without macros or boilerplate. It works with any enum type using compiler-based metaprogramming techniques.", "when_to_avoid": ["your enums have very large or sparse value ranges that exceed the library's default limits", "you need full runtime reflection beyond enums", "you are stuck on a pre-C++17 compiler", "you cannot tolerate the template-heavy compile-time cost in large translation units"], "when_to_choose": ["you need enum-to-string or string-to-enum conversion in modern C++ without writing macros", "you want a zero-dependency, single-header library you can drop into any project", "you need to iterate or reflect over enum values generically", "you want compile-time enum utilities with no runtime registration"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/magic_enum", "repo": "Neargye/magic_enum", "role": "main", "score": 81}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:09:37.446654+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T17:47:25.880916+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "53d7585af996a9bb76306b8644a48be41a5846c8539c1328ba908362d633ea19", "fetched_at": "2026-08-28T04:09:37.446654+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Neargye/magic_enum"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:09:37.446654+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T17:47:25.880916+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "53d7585af996a9bb76306b8644a48be41a5846c8539c1328ba908362d633ea19", "fetched_at": "2026-08-28T04:09:37.446654+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Neargye/magic_enum"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T17:47:25.880916+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "53d7585af996a9bb76306b8644a48be41a5846c8539c1328ba908362d633ea19", "fetched_at": "2026-08-28T04:09:37.446654+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Neargye/magic_enum"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:09:37.446654+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:09:37.446654+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:09:37.446654+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T17:47:25.880916+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "53d7585af996a9bb76306b8644a48be41a5846c8539c1328ba908362d633ea19", "fetched_at": "2026-08-28T04:09:37.446654+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Neargye/magic_enum"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:09:37.446654+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:09:37.446654+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T17:47:25.880916+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "53d7585af996a9bb76306b8644a48be41a5846c8539c1328ba908362d633ea19", "fetched_at": "2026-08-28T04:09:37.446654+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Neargye/magic_enum"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:09:37.446654+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:09:37.446654+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:09:37.446654+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T17:47:25.880916+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "53d7585af996a9bb76306b8644a48be41a5846c8539c1328ba908362d633ea19", "fetched_at": "2026-08-28T04:09:37.446654+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Neargye/magic_enum"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:09:37.446654+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:09:37.446654+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T17:47:25.880916+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "53d7585af996a9bb76306b8644a48be41a5846c8539c1328ba908362d633ea19", "fetched_at": "2026-08-28T04:09:37.446654+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Neargye/magic_enum"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T17:47:25.880916+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "53d7585af996a9bb76306b8644a48be41a5846c8539c1328ba908362d633ea19", "fetched_at": "2026-08-28T04:09:37.446654+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Neargye/magic_enum"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T17:47:25.880916+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "53d7585af996a9bb76306b8644a48be41a5846c8539c1328ba908362d633ea19", "fetched_at": "2026-08-28T04:09:37.446654+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Neargye/magic_enum"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T17:47:25.880916+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "53d7585af996a9bb76306b8644a48be41a5846c8539c1328ba908362d633ea19", "fetched_at": "2026-08-28T04:09:37.446654+00:00", "kind": "readme", "missing": false, "url": "https://github.com/Neargye/magic_enum"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 97, "longevity": 100, "rhythm": 50}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 2713, "days_push": 22, "days_rel": 122, "gap_med": 535, "n_releases_24m": 2}, "score": 81, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}