{"adoption": {"forks": 47, "observed_at": "2026-08-28T04:03:59.922088+00:00", "stars": 1209}, "canonical_url": "https://ross.abutalabs.com/products/buildkonfig", "card": {"archived": false, "artifact_type": "plugin", "description": "BuildConfig for Kotlin Multiplatform Project", "domain": ["developer-tools", "mobile-development", "cross-platform"], "enriched": true, "function": ["build-tool", "configuration-management", "developer-tools"], "health_score": 99, "homepage": null, "language": "Kotlin", "license": "Apache-2.0", "license_family": "permissive", "maturity": "active", "member_repos": ["yshrsmz/BuildKonfig"], "name": "yshrsmz/BuildKonfig", "platform": ["jvm", "cross-platform"], "pushed_at": "2026-08-24T23:42:36+00:00", "repo": "yshrsmz/BuildKonfig", "stars": 1209, "tags": ["gradle-plugin", "kotlin-multiplatform", "buildconfig", "kmp", "build-configuration", "gradle", "android", "ios"], "topics": ["gradle-plugin", "kotlin", "kotlin-multiplatform", "kotlin-mpp", "buildconfig", "kmp"], "urls": [], "use_cases": ["generate buildconfig for kotlin multiplatform project", "share config values between android and ios in kmp", "embed gradle properties into kotlin multiplatform code", "replace android buildconfig in multiplatform app", "define build fields once for all kotlin targets", "inject api keys into kotlin multiplatform builds"], "what_it_is": "A Gradle plugin that generates BuildConfig-style objects for Kotlin Multiplatform and Kotlin/JVM projects, embedding values from Gradle build files. It lets developers define configuration fields once in a shared place instead of wiring them separately per platform like Android and iOS.", "when_to_avoid": ["you only build for a single platform with native tooling already handling BuildConfig", "you need runtime-configurable settings rather than compile-time constants", "your project does not use Gradle"], "when_to_choose": ["you need BuildConfig-like constants across multiple Kotlin Multiplatform targets", "you want to avoid duplicating configuration setup per platform", "you use Gradle and Kotlin 2.1+ with KMP or Kotlin/JVM"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/buildkonfig", "repo": "yshrsmz/BuildKonfig", "role": "main", "score": 96}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:03:59.922088+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T06:18:37.649362+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7b395e4dc63b0ac9f29ded3193e9ce92b9c7470f4091c8b4599230717b3d6ec1", "fetched_at": "2026-08-28T04:03:59.922088+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yshrsmz/BuildKonfig"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:03:59.922088+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T06:18:37.649362+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7b395e4dc63b0ac9f29ded3193e9ce92b9c7470f4091c8b4599230717b3d6ec1", "fetched_at": "2026-08-28T04:03:59.922088+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yshrsmz/BuildKonfig"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T06:18:37.649362+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7b395e4dc63b0ac9f29ded3193e9ce92b9c7470f4091c8b4599230717b3d6ec1", "fetched_at": "2026-08-28T04:03:59.922088+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yshrsmz/BuildKonfig"}], "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:03:59.922088+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:03:59.922088+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:03:59.922088+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T06:18:37.649362+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7b395e4dc63b0ac9f29ded3193e9ce92b9c7470f4091c8b4599230717b3d6ec1", "fetched_at": "2026-08-28T04:03:59.922088+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yshrsmz/BuildKonfig"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:03:59.922088+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:03:59.922088+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T06:18:37.649362+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7b395e4dc63b0ac9f29ded3193e9ce92b9c7470f4091c8b4599230717b3d6ec1", "fetched_at": "2026-08-28T04:03:59.922088+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yshrsmz/BuildKonfig"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:03:59.922088+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:03:59.922088+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:03:59.922088+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T06:18:37.649362+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7b395e4dc63b0ac9f29ded3193e9ce92b9c7470f4091c8b4599230717b3d6ec1", "fetched_at": "2026-08-28T04:03:59.922088+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yshrsmz/BuildKonfig"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:03:59.922088+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:03:59.922088+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T06:18:37.649362+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7b395e4dc63b0ac9f29ded3193e9ce92b9c7470f4091c8b4599230717b3d6ec1", "fetched_at": "2026-08-28T04:03:59.922088+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yshrsmz/BuildKonfig"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T06:18:37.649362+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7b395e4dc63b0ac9f29ded3193e9ce92b9c7470f4091c8b4599230717b3d6ec1", "fetched_at": "2026-08-28T04:03:59.922088+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yshrsmz/BuildKonfig"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T06:18:37.649362+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7b395e4dc63b0ac9f29ded3193e9ce92b9c7470f4091c8b4599230717b3d6ec1", "fetched_at": "2026-08-28T04:03:59.922088+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yshrsmz/BuildKonfig"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T06:18:37.649362+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7b395e4dc63b0ac9f29ded3193e9ce92b9c7470f4091c8b4599230717b3d6ec1", "fetched_at": "2026-08-28T04:03:59.922088+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yshrsmz/BuildKonfig"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 90}, "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": 2781, "days_push": 9, "days_rel": 70, "gap_med": 10.0, "n_releases_24m": 11}, "score": 96, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}