{"adoption": {"forks": 985, "observed_at": "2026-08-28T04:10:37.283556+00:00", "stars": 9804}, "canonical_url": "https://ross.abutalabs.com/products/openebs", "card": {"archived": false, "artifact_type": "infra-config", "description": "A popular & widely deployed Open Source Container Native Storage platform for Stateful Persistent Applications on Kubernetes.", "domain": ["cloud-computing", "self-hosted", "microservices"], "enriched": true, "function": ["container-orchestration", "cloud", "self-hosted", "deployment"], "health_score": 100, "homepage": "https://openebs.io", "language": null, "license": "Apache-2.0", "license_family": "permissive", "maturity": "active", "member_repos": ["openebs/openebs", "openebs/mayastor"], "name": "OpenEBS", "platform": ["cloud", "self-hosted"], "pushed_at": "2026-08-26T13:15:34+00:00", "repo": "openebs/openebs", "stars": 9804, "tags": ["kubernetes-storage", "csi-driver", "persistent-volumes", "block-storage", "cloud-native-storage", "localpv", "mayastor", "spdk", "stateful-workloads", "containers", "devops", "kubernetes", "docker", "linux"], "topics": ["storage", "storage-container", "persistent-storage", "docker", "pod", "devops", "k8s", "kubernetes", "ebs", "ebs-volumes", "block-storage", "openebs", "containerization", "persistent-workloads", "cloud-native", "filesystems", "k8s-sig-storage", "blockstorage", "spdk", "csi"], "urls": [{"kind": "homepage", "url": "https://openebs.io"}], "use_cases": ["provision persistent volumes for kubernetes stateful apps", "replicated storage for databases on kubernetes", "local pv storage for cassandra or mongodb", "kubernetes csi storage driver", "run stateful workloads on bare metal kubernetes", "storage snapshots and volume resize in k8s"], "what_it_is": "OpenEBS is an open-source container-native storage platform that provides persistent storage for stateful applications on Kubernetes. It offers LocalPV engines for direct node storage and Replicated PV engines (including Mayastor) for synchronous cross-node data replication, with features like snapshots, thin provisioning, and volume resizing.", "when_to_avoid": ["you need storage for non-Kubernetes environments", "you require enterprise vendor support contracts", "your workloads are entirely stateless and need no persistent volumes"], "when_to_choose": ["you need dynamic persistent storage provisioning on Kubernetes", "you want storage-level replication for stateful apps like databases", "you run distributed databases that handle their own replication and want fast local volumes", "you want a CNCF-backed, widely deployed open-source storage solution"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/repos/openebs/openebs", "repo": "openebs/openebs", "role": "main", "score": 99}, {"path": "/repos/openebs/mayastor", "repo": "openebs/mayastor", "role": "backend", "score": 100}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:10:37.283556+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T17:20:58.510112+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c4a8f30007270b11b131c1e4b76319742da5182c2a5ae491931f3ecc3ee113b7", "fetched_at": "2026-08-28T04:10:37.283556+00:00", "kind": "readme", "missing": false, "url": "https://github.com/openebs/openebs"}, {"content_hash": "7e20b97e07fb521d2a9f0b00b7a123a1752bac6b16c7b527672e1939fc5befc4", "fetched_at": "2026-08-29T08:20:57.090481+00:00", "kind": "homepage", "missing": false, "url": "https://openebs.io"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:10:37.283556+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T17:20:58.510112+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c4a8f30007270b11b131c1e4b76319742da5182c2a5ae491931f3ecc3ee113b7", "fetched_at": "2026-08-28T04:10:37.283556+00:00", "kind": "readme", "missing": false, "url": "https://github.com/openebs/openebs"}, {"content_hash": "7e20b97e07fb521d2a9f0b00b7a123a1752bac6b16c7b527672e1939fc5befc4", "fetched_at": "2026-08-29T08:20:57.090481+00:00", "kind": "homepage", "missing": false, "url": "https://openebs.io"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T17:20:58.510112+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c4a8f30007270b11b131c1e4b76319742da5182c2a5ae491931f3ecc3ee113b7", "fetched_at": "2026-08-28T04:10:37.283556+00:00", "kind": "readme", "missing": false, "url": "https://github.com/openebs/openebs"}, {"content_hash": "7e20b97e07fb521d2a9f0b00b7a123a1752bac6b16c7b527672e1939fc5befc4", "fetched_at": "2026-08-29T08:20:57.090481+00:00", "kind": "homepage", "missing": false, "url": "https://openebs.io"}], "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:10:37.283556+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:10:37.283556+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:10:37.283556+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T17:20:58.510112+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c4a8f30007270b11b131c1e4b76319742da5182c2a5ae491931f3ecc3ee113b7", "fetched_at": "2026-08-28T04:10:37.283556+00:00", "kind": "readme", "missing": false, "url": "https://github.com/openebs/openebs"}, {"content_hash": "7e20b97e07fb521d2a9f0b00b7a123a1752bac6b16c7b527672e1939fc5befc4", "fetched_at": "2026-08-29T08:20:57.090481+00:00", "kind": "homepage", "missing": false, "url": "https://openebs.io"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:10:37.283556+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:10:37.283556+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T17:20:58.510112+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c4a8f30007270b11b131c1e4b76319742da5182c2a5ae491931f3ecc3ee113b7", "fetched_at": "2026-08-28T04:10:37.283556+00:00", "kind": "readme", "missing": false, "url": "https://github.com/openebs/openebs"}, {"content_hash": "7e20b97e07fb521d2a9f0b00b7a123a1752bac6b16c7b527672e1939fc5befc4", "fetched_at": "2026-08-29T08:20:57.090481+00:00", "kind": "homepage", "missing": false, "url": "https://openebs.io"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:10:37.283556+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:10:37.283556+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:10:37.283556+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T17:20:58.510112+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c4a8f30007270b11b131c1e4b76319742da5182c2a5ae491931f3ecc3ee113b7", "fetched_at": "2026-08-28T04:10:37.283556+00:00", "kind": "readme", "missing": false, "url": "https://github.com/openebs/openebs"}, {"content_hash": "7e20b97e07fb521d2a9f0b00b7a123a1752bac6b16c7b527672e1939fc5befc4", "fetched_at": "2026-08-29T08:20:57.090481+00:00", "kind": "homepage", "missing": false, "url": "https://openebs.io"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:10:37.283556+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:10:37.283556+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T17:20:58.510112+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c4a8f30007270b11b131c1e4b76319742da5182c2a5ae491931f3ecc3ee113b7", "fetched_at": "2026-08-28T04:10:37.283556+00:00", "kind": "readme", "missing": false, "url": "https://github.com/openebs/openebs"}, {"content_hash": "7e20b97e07fb521d2a9f0b00b7a123a1752bac6b16c7b527672e1939fc5befc4", "fetched_at": "2026-08-29T08:20:57.090481+00:00", "kind": "homepage", "missing": false, "url": "https://openebs.io"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T17:20:58.510112+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c4a8f30007270b11b131c1e4b76319742da5182c2a5ae491931f3ecc3ee113b7", "fetched_at": "2026-08-28T04:10:37.283556+00:00", "kind": "readme", "missing": false, "url": "https://github.com/openebs/openebs"}, {"content_hash": "7e20b97e07fb521d2a9f0b00b7a123a1752bac6b16c7b527672e1939fc5befc4", "fetched_at": "2026-08-29T08:20:57.090481+00:00", "kind": "homepage", "missing": false, "url": "https://openebs.io"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T17:20:58.510112+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c4a8f30007270b11b131c1e4b76319742da5182c2a5ae491931f3ecc3ee113b7", "fetched_at": "2026-08-28T04:10:37.283556+00:00", "kind": "readme", "missing": false, "url": "https://github.com/openebs/openebs"}, {"content_hash": "7e20b97e07fb521d2a9f0b00b7a123a1752bac6b16c7b527672e1939fc5befc4", "fetched_at": "2026-08-29T08:20:57.090481+00:00", "kind": "homepage", "missing": false, "url": "https://openebs.io"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T17:20:58.510112+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c4a8f30007270b11b131c1e4b76319742da5182c2a5ae491931f3ecc3ee113b7", "fetched_at": "2026-08-28T04:10:37.283556+00:00", "kind": "readme", "missing": false, "url": "https://github.com/openebs/openebs"}, {"content_hash": "7e20b97e07fb521d2a9f0b00b7a123a1752bac6b16c7b527672e1939fc5befc4", "fetched_at": "2026-08-29T08:20:57.090481+00:00", "kind": "homepage", "missing": false, "url": "https://openebs.io"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 99}, "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": 3684, "days_push": 7, "days_rel": 7, "gap_med": 18, "n_releases_24m": 16}, "score": 99, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}