{"adoption": {"forks": 131, "observed_at": "2026-08-28T04:07:24.318128+00:00", "stars": 2830}, "canonical_url": "https://ross.abutalabs.com/products/cdgriffith-box", "card": {"archived": false, "artifact_type": "library", "description": "Python dictionaries with advanced dot notation access", "domain": ["developer-tools"], "enriched": true, "function": ["serialization", "developer-tools"], "health_score": 78, "homepage": "https://github.com/cdgriffith/Box/wiki", "language": "Python", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["cdgriffith/Box"], "name": "cdgriffith/Box", "platform": ["python", "cross-platform"], "pushed_at": "2026-02-21T16:20:58+00:00", "repo": "cdgriffith/Box", "stars": 2830, "tags": ["dot-notation", "dictionaries", "bunch", "python-types", "config-loading", "json-yaml-toml", "data-engineering"], "topics": ["dictionaries", "bunch", "python-types", "python", "python3", "object", "helper", "python-library", "pypi", "box", "python-box", "addict"], "urls": [], "use_cases": ["access nested dictionary values with dot notation in python", "load json or yaml config files into attribute-accessible objects", "replace dicts with a drop-in object-style container", "safely access dict keys containing spaces or special characters", "convert between dict, json, yaml, toml, and msgpack", "recursively convert nested dicts and lists into attribute objects"], "what_it_is": "Box is a Python library providing dictionary subclasses with advanced dot notation attribute access, automatic conversion of nested dicts and lists, and safe handling of keys with spaces or special characters. It supports easy serialization to and from formats like JSON, YAML, TOML, and msgpack, with optional Cython optimizations for faster loading of large data sets.", "when_to_avoid": ["you need strict type checking or schema validation of the data structure", "you cannot tolerate breaking changes between major versions without pinning", "you require minimal dependencies and pure-stdlib behavior on unsupported platforms"], "when_to_choose": ["you want dict-like data with attribute access and automatic nested conversion", "you need convenient loading and saving of config or data files in multiple formats", "you want a mature, MIT-licensed, actively maintained library with Cython speedups"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/cdgriffith-box", "repo": "cdgriffith/Box", "role": "main", "score": 75}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:07:24.318128+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T07:38:10.324717+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b1b8095ba24988f563156c4936b1a5933e668dfd4a2ef4a291d4e3b3b4dd98b9", "fetched_at": "2026-08-28T04:07:24.318128+00:00", "kind": "readme", "missing": false, "url": "https://github.com/cdgriffith/Box"}, {"content_hash": "19992fd10c55cd7b655787fc6b25962890dd6cc38f6135f78b508011f6b2f95b", "fetched_at": "2026-08-29T09:53:22.498995+00:00", "kind": "homepage", "missing": false, "url": "https://github.com/cdgriffith/Box/wiki"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:07:24.318128+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T07:38:10.324717+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b1b8095ba24988f563156c4936b1a5933e668dfd4a2ef4a291d4e3b3b4dd98b9", "fetched_at": "2026-08-28T04:07:24.318128+00:00", "kind": "readme", "missing": false, "url": "https://github.com/cdgriffith/Box"}, {"content_hash": "19992fd10c55cd7b655787fc6b25962890dd6cc38f6135f78b508011f6b2f95b", "fetched_at": "2026-08-29T09:53:22.498995+00:00", "kind": "homepage", "missing": false, "url": "https://github.com/cdgriffith/Box/wiki"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T07:38:10.324717+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b1b8095ba24988f563156c4936b1a5933e668dfd4a2ef4a291d4e3b3b4dd98b9", "fetched_at": "2026-08-28T04:07:24.318128+00:00", "kind": "readme", "missing": false, "url": "https://github.com/cdgriffith/Box"}, {"content_hash": "19992fd10c55cd7b655787fc6b25962890dd6cc38f6135f78b508011f6b2f95b", "fetched_at": "2026-08-29T09:53:22.498995+00:00", "kind": "homepage", "missing": false, "url": "https://github.com/cdgriffith/Box/wiki"}], "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:07:24.318128+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:07:24.318128+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:07:24.318128+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T07:38:10.324717+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b1b8095ba24988f563156c4936b1a5933e668dfd4a2ef4a291d4e3b3b4dd98b9", "fetched_at": "2026-08-28T04:07:24.318128+00:00", "kind": "readme", "missing": false, "url": "https://github.com/cdgriffith/Box"}, {"content_hash": "19992fd10c55cd7b655787fc6b25962890dd6cc38f6135f78b508011f6b2f95b", "fetched_at": "2026-08-29T09:53:22.498995+00:00", "kind": "homepage", "missing": false, "url": "https://github.com/cdgriffith/Box/wiki"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:07:24.318128+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:07:24.318128+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T07:38:10.324717+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b1b8095ba24988f563156c4936b1a5933e668dfd4a2ef4a291d4e3b3b4dd98b9", "fetched_at": "2026-08-28T04:07:24.318128+00:00", "kind": "readme", "missing": false, "url": "https://github.com/cdgriffith/Box"}, {"content_hash": "19992fd10c55cd7b655787fc6b25962890dd6cc38f6135f78b508011f6b2f95b", "fetched_at": "2026-08-29T09:53:22.498995+00:00", "kind": "homepage", "missing": false, "url": "https://github.com/cdgriffith/Box/wiki"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:07:24.318128+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:07:24.318128+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:07:24.318128+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T07:38:10.324717+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b1b8095ba24988f563156c4936b1a5933e668dfd4a2ef4a291d4e3b3b4dd98b9", "fetched_at": "2026-08-28T04:07:24.318128+00:00", "kind": "readme", "missing": false, "url": "https://github.com/cdgriffith/Box"}, {"content_hash": "19992fd10c55cd7b655787fc6b25962890dd6cc38f6135f78b508011f6b2f95b", "fetched_at": "2026-08-29T09:53:22.498995+00:00", "kind": "homepage", "missing": false, "url": "https://github.com/cdgriffith/Box/wiki"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:07:24.318128+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:07:24.318128+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T07:38:10.324717+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b1b8095ba24988f563156c4936b1a5933e668dfd4a2ef4a291d4e3b3b4dd98b9", "fetched_at": "2026-08-28T04:07:24.318128+00:00", "kind": "readme", "missing": false, "url": "https://github.com/cdgriffith/Box"}, {"content_hash": "19992fd10c55cd7b655787fc6b25962890dd6cc38f6135f78b508011f6b2f95b", "fetched_at": "2026-08-29T09:53:22.498995+00:00", "kind": "homepage", "missing": false, "url": "https://github.com/cdgriffith/Box/wiki"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T07:38:10.324717+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b1b8095ba24988f563156c4936b1a5933e668dfd4a2ef4a291d4e3b3b4dd98b9", "fetched_at": "2026-08-28T04:07:24.318128+00:00", "kind": "readme", "missing": false, "url": "https://github.com/cdgriffith/Box"}, {"content_hash": "19992fd10c55cd7b655787fc6b25962890dd6cc38f6135f78b508011f6b2f95b", "fetched_at": "2026-08-29T09:53:22.498995+00:00", "kind": "homepage", "missing": false, "url": "https://github.com/cdgriffith/Box/wiki"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T07:38:10.324717+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b1b8095ba24988f563156c4936b1a5933e668dfd4a2ef4a291d4e3b3b4dd98b9", "fetched_at": "2026-08-28T04:07:24.318128+00:00", "kind": "readme", "missing": false, "url": "https://github.com/cdgriffith/Box"}, {"content_hash": "19992fd10c55cd7b655787fc6b25962890dd6cc38f6135f78b508011f6b2f95b", "fetched_at": "2026-08-29T09:53:22.498995+00:00", "kind": "homepage", "missing": false, "url": "https://github.com/cdgriffith/Box/wiki"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T07:38:10.324717+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "b1b8095ba24988f563156c4936b1a5933e668dfd4a2ef4a291d4e3b3b4dd98b9", "fetched_at": "2026-08-28T04:07:24.318128+00:00", "kind": "readme", "missing": false, "url": "https://github.com/cdgriffith/Box"}, {"content_hash": "19992fd10c55cd7b655787fc6b25962890dd6cc38f6135f78b508011f6b2f95b", "fetched_at": "2026-08-29T09:53:22.498995+00:00", "kind": "homepage", "missing": false, "url": "https://github.com/cdgriffith/Box/wiki"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 68, "longevity": 100, "rhythm": 71}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3462, "days_push": 193, "days_rel": 193, "gap_med": 18.0, "n_releases_24m": 5}, "score": 75, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}