{"adoption": {"forks": 132, "observed_at": "2026-08-28T04:06:20.923179+00:00", "stars": 2160}, "canonical_url": "https://ross.abutalabs.com/products/cleanenv", "card": {"archived": false, "artifact_type": "library", "description": "✨Clean and minimalistic environment configuration reader for Golang", "domain": ["developer-tools", "backend"], "enriched": true, "function": ["configuration-management"], "health_score": 46, "homepage": null, "language": "Go", "license": "MIT", "license_family": "permissive", "maturity": "stable", "member_repos": ["ilyakaznacheev/cleanenv"], "name": "ilyakaznacheev/cleanenv", "platform": ["go", "cross-platform"], "pushed_at": "2025-09-15T08:01:54+00:00", "repo": "ilyakaznacheev/cleanenv", "stars": 2160, "tags": ["environment-variables", "config-reader", "yaml", "struct-tags", "twelve-factor", "automation"], "topics": ["configuration", "environment-variables", "environment-configuration", "hacktoberfest"], "urls": [], "use_cases": ["load app config from env vars in Go", "read YAML config file into a struct", "combine file-based and environment-based configuration", "generate a help listing of all config variables", "refresh environment variable values at runtime", "twelve-factor app configuration in Go"], "what_it_is": "A minimalistic Go library for reading application configuration from files (YAML, JSON, etc.) and environment variables into typed structs. It also generates a detailed variable list for help output and supports refreshing environment variables at runtime.", "when_to_avoid": ["you need advanced features like hot-reloading files, validation frameworks, or remote config sources", "you need support for many exotic config file formats beyond the supported ones", "your configuration logic is highly dynamic or nested beyond simple structs"], "when_to_choose": ["you want a small, dependency-light config reader with struct tags", "your app needs env vars to override file-based config", "you prefer explicit typed config structs over dynamic config maps"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/cleanenv", "repo": "ilyakaznacheev/cleanenv", "role": "main", "score": 42}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:20.923179+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:50:18.407893+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "40ff8513408b9286426cd4dad81c90fc4422506d4073333ba62a10ec9881ad70", "fetched_at": "2026-08-28T04:06:20.923179+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ilyakaznacheev/cleanenv"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:20.923179+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:50:18.407893+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "40ff8513408b9286426cd4dad81c90fc4422506d4073333ba62a10ec9881ad70", "fetched_at": "2026-08-28T04:06:20.923179+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ilyakaznacheev/cleanenv"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:50:18.407893+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "40ff8513408b9286426cd4dad81c90fc4422506d4073333ba62a10ec9881ad70", "fetched_at": "2026-08-28T04:06:20.923179+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ilyakaznacheev/cleanenv"}], "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:06:20.923179+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:20.923179+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:20.923179+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:50:18.407893+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "40ff8513408b9286426cd4dad81c90fc4422506d4073333ba62a10ec9881ad70", "fetched_at": "2026-08-28T04:06:20.923179+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ilyakaznacheev/cleanenv"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:20.923179+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:20.923179+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:50:18.407893+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "40ff8513408b9286426cd4dad81c90fc4422506d4073333ba62a10ec9881ad70", "fetched_at": "2026-08-28T04:06:20.923179+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ilyakaznacheev/cleanenv"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:20.923179+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:20.923179+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:20.923179+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:50:18.407893+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "40ff8513408b9286426cd4dad81c90fc4422506d4073333ba62a10ec9881ad70", "fetched_at": "2026-08-28T04:06:20.923179+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ilyakaznacheev/cleanenv"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:20.923179+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:20.923179+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:50:18.407893+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "40ff8513408b9286426cd4dad81c90fc4422506d4073333ba62a10ec9881ad70", "fetched_at": "2026-08-28T04:06:20.923179+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ilyakaznacheev/cleanenv"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:50:18.407893+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "40ff8513408b9286426cd4dad81c90fc4422506d4073333ba62a10ec9881ad70", "fetched_at": "2026-08-28T04:06:20.923179+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ilyakaznacheev/cleanenv"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:50:18.407893+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "40ff8513408b9286426cd4dad81c90fc4422506d4073333ba62a10ec9881ad70", "fetched_at": "2026-08-28T04:06:20.923179+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ilyakaznacheev/cleanenv"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:50:18.407893+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "40ff8513408b9286426cd4dad81c90fc4422506d4073333ba62a10ec9881ad70", "fetched_at": "2026-08-28T04:06:20.923179+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ilyakaznacheev/cleanenv"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 42, "longevity": 100, "rhythm": 8}, "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": 2609, "days_push": 352, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 42, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}