{"adoption": {"forks": 929, "observed_at": "2026-08-28T04:06:16.784308+00:00", "stars": 2124}, "canonical_url": "https://ross.abutalabs.com/products/libcloud", "card": {"archived": false, "artifact_type": "library", "description": "Apache Libcloud is a Python library that hides differences between different cloud provider APIs and allows you to manage different cloud resources through a unified and easy-to-use API.", "domain": ["cloud-computing", "developer-tools", "apis", "infrastructure-as-code"], "enriched": true, "function": ["cloud", "sdk", "developer-tools"], "health_score": 79, "homepage": "https://libcloud.apache.org", "language": "Python", "license": "Apache-2.0", "license_family": "permissive", "maturity": "stable", "member_repos": ["apache/libcloud"], "name": "apache/libcloud", "platform": ["python", "cross-platform"], "pushed_at": "2026-08-19T04:32:33+00:00", "repo": "apache/libcloud", "stars": 2124, "tags": ["cloud-providers", "multi-cloud", "compute", "object-storage", "dns", "load-balancers", "containers", "backup", "apache"], "topics": ["python", "libcloud", "cloud", "library", "apache"], "urls": [], "use_cases": ["manage cloud servers across multiple providers from one Python API", "avoid vendor lock-in when provisioning VMs", "upload files to S3 or other object storage programmatically", "create and manage DNS records across providers", "manage load balancers and container services uniformly", "script multi-cloud infrastructure automation in Python"], "what_it_is": "Apache Libcloud is a Python library that provides a unified API for interacting with more than 50 cloud service providers, hiding differences between their APIs. It covers six main resource areas: compute, storage, load balancers, DNS, containers, and backup.", "when_to_avoid": ["you only target a single cloud provider and want its full native feature set", "you need infrastructure-as-code tooling rather than a programmatic library", "you need a provider or API not among the supported drivers"], "when_to_choose": ["you need to work with many cloud providers through one consistent interface", "you want to avoid provider-specific SDKs and vendor lock-in", "you are building Python tooling for multi-cloud provisioning or storage"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/libcloud", "repo": "apache/libcloud", "role": "main", "score": 76}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:16.784308+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:52:47.655866+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "39bf404f00a269539f238eacce0f030d11f7a23de0f1e8ef4559d4e2858244ca", "fetched_at": "2026-08-28T04:06:16.784308+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apache/libcloud"}, {"content_hash": "2d03289bad64417eb1519fbfe5bc3377774dd2160d6c1528a5afc6805314c8ff", "fetched_at": "2026-08-29T10:32:40.367161+00:00", "kind": "homepage", "missing": false, "url": "https://libcloud.apache.org"}, {"content_hash": "c62e25b318ca6cfc7f2ca6eb6a0190ccbbcacdaea7553d5c48134a53152ef02c", "fetched_at": "2026-08-29T10:32:40.409834+00:00", "kind": "site_page", "missing": false, "url": "https://libcloud.apache.org/about.html"}, {"content_hash": "75690e4218e4dc4c7aa3099bbb7a8765aa2cbe2f02e6e01e21807d0c721927ba", "fetched_at": "2026-08-29T10:32:40.412530+00:00", "kind": "site_page", "missing": false, "url": "https://libcloud.apache.org/getting-started.html"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:16.784308+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:52:47.655866+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "39bf404f00a269539f238eacce0f030d11f7a23de0f1e8ef4559d4e2858244ca", "fetched_at": "2026-08-28T04:06:16.784308+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apache/libcloud"}, {"content_hash": "2d03289bad64417eb1519fbfe5bc3377774dd2160d6c1528a5afc6805314c8ff", "fetched_at": "2026-08-29T10:32:40.367161+00:00", "kind": "homepage", "missing": false, "url": "https://libcloud.apache.org"}, {"content_hash": "c62e25b318ca6cfc7f2ca6eb6a0190ccbbcacdaea7553d5c48134a53152ef02c", "fetched_at": "2026-08-29T10:32:40.409834+00:00", "kind": "site_page", "missing": false, "url": "https://libcloud.apache.org/about.html"}, {"content_hash": "75690e4218e4dc4c7aa3099bbb7a8765aa2cbe2f02e6e01e21807d0c721927ba", "fetched_at": "2026-08-29T10:32:40.412530+00:00", "kind": "site_page", "missing": false, "url": "https://libcloud.apache.org/getting-started.html"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:52:47.655866+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "39bf404f00a269539f238eacce0f030d11f7a23de0f1e8ef4559d4e2858244ca", "fetched_at": "2026-08-28T04:06:16.784308+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apache/libcloud"}, {"content_hash": "2d03289bad64417eb1519fbfe5bc3377774dd2160d6c1528a5afc6805314c8ff", "fetched_at": "2026-08-29T10:32:40.367161+00:00", "kind": "homepage", "missing": false, "url": "https://libcloud.apache.org"}, {"content_hash": "c62e25b318ca6cfc7f2ca6eb6a0190ccbbcacdaea7553d5c48134a53152ef02c", "fetched_at": "2026-08-29T10:32:40.409834+00:00", "kind": "site_page", "missing": false, "url": "https://libcloud.apache.org/about.html"}, {"content_hash": "75690e4218e4dc4c7aa3099bbb7a8765aa2cbe2f02e6e01e21807d0c721927ba", "fetched_at": "2026-08-29T10:32:40.412530+00:00", "kind": "site_page", "missing": false, "url": "https://libcloud.apache.org/getting-started.html"}], "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:16.784308+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:16.784308+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:16.784308+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:52:47.655866+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "39bf404f00a269539f238eacce0f030d11f7a23de0f1e8ef4559d4e2858244ca", "fetched_at": "2026-08-28T04:06:16.784308+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apache/libcloud"}, {"content_hash": "2d03289bad64417eb1519fbfe5bc3377774dd2160d6c1528a5afc6805314c8ff", "fetched_at": "2026-08-29T10:32:40.367161+00:00", "kind": "homepage", "missing": false, "url": "https://libcloud.apache.org"}, {"content_hash": "c62e25b318ca6cfc7f2ca6eb6a0190ccbbcacdaea7553d5c48134a53152ef02c", "fetched_at": "2026-08-29T10:32:40.409834+00:00", "kind": "site_page", "missing": false, "url": "https://libcloud.apache.org/about.html"}, {"content_hash": "75690e4218e4dc4c7aa3099bbb7a8765aa2cbe2f02e6e01e21807d0c721927ba", "fetched_at": "2026-08-29T10:32:40.412530+00:00", "kind": "site_page", "missing": false, "url": "https://libcloud.apache.org/getting-started.html"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:16.784308+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:16.784308+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:52:47.655866+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "39bf404f00a269539f238eacce0f030d11f7a23de0f1e8ef4559d4e2858244ca", "fetched_at": "2026-08-28T04:06:16.784308+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apache/libcloud"}, {"content_hash": "2d03289bad64417eb1519fbfe5bc3377774dd2160d6c1528a5afc6805314c8ff", "fetched_at": "2026-08-29T10:32:40.367161+00:00", "kind": "homepage", "missing": false, "url": "https://libcloud.apache.org"}, {"content_hash": "c62e25b318ca6cfc7f2ca6eb6a0190ccbbcacdaea7553d5c48134a53152ef02c", "fetched_at": "2026-08-29T10:32:40.409834+00:00", "kind": "site_page", "missing": false, "url": "https://libcloud.apache.org/about.html"}, {"content_hash": "75690e4218e4dc4c7aa3099bbb7a8765aa2cbe2f02e6e01e21807d0c721927ba", "fetched_at": "2026-08-29T10:32:40.412530+00:00", "kind": "site_page", "missing": false, "url": "https://libcloud.apache.org/getting-started.html"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:16.784308+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:16.784308+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:16.784308+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:52:47.655866+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "39bf404f00a269539f238eacce0f030d11f7a23de0f1e8ef4559d4e2858244ca", "fetched_at": "2026-08-28T04:06:16.784308+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apache/libcloud"}, {"content_hash": "2d03289bad64417eb1519fbfe5bc3377774dd2160d6c1528a5afc6805314c8ff", "fetched_at": "2026-08-29T10:32:40.367161+00:00", "kind": "homepage", "missing": false, "url": "https://libcloud.apache.org"}, {"content_hash": "c62e25b318ca6cfc7f2ca6eb6a0190ccbbcacdaea7553d5c48134a53152ef02c", "fetched_at": "2026-08-29T10:32:40.409834+00:00", "kind": "site_page", "missing": false, "url": "https://libcloud.apache.org/about.html"}, {"content_hash": "75690e4218e4dc4c7aa3099bbb7a8765aa2cbe2f02e6e01e21807d0c721927ba", "fetched_at": "2026-08-29T10:32:40.412530+00:00", "kind": "site_page", "missing": false, "url": "https://libcloud.apache.org/getting-started.html"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:16.784308+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:16.784308+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:52:47.655866+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "39bf404f00a269539f238eacce0f030d11f7a23de0f1e8ef4559d4e2858244ca", "fetched_at": "2026-08-28T04:06:16.784308+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apache/libcloud"}, {"content_hash": "2d03289bad64417eb1519fbfe5bc3377774dd2160d6c1528a5afc6805314c8ff", "fetched_at": "2026-08-29T10:32:40.367161+00:00", "kind": "homepage", "missing": false, "url": "https://libcloud.apache.org"}, {"content_hash": "c62e25b318ca6cfc7f2ca6eb6a0190ccbbcacdaea7553d5c48134a53152ef02c", "fetched_at": "2026-08-29T10:32:40.409834+00:00", "kind": "site_page", "missing": false, "url": "https://libcloud.apache.org/about.html"}, {"content_hash": "75690e4218e4dc4c7aa3099bbb7a8765aa2cbe2f02e6e01e21807d0c721927ba", "fetched_at": "2026-08-29T10:32:40.412530+00:00", "kind": "site_page", "missing": false, "url": "https://libcloud.apache.org/getting-started.html"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:52:47.655866+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "39bf404f00a269539f238eacce0f030d11f7a23de0f1e8ef4559d4e2858244ca", "fetched_at": "2026-08-28T04:06:16.784308+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apache/libcloud"}, {"content_hash": "2d03289bad64417eb1519fbfe5bc3377774dd2160d6c1528a5afc6805314c8ff", "fetched_at": "2026-08-29T10:32:40.367161+00:00", "kind": "homepage", "missing": false, "url": "https://libcloud.apache.org"}, {"content_hash": "c62e25b318ca6cfc7f2ca6eb6a0190ccbbcacdaea7553d5c48134a53152ef02c", "fetched_at": "2026-08-29T10:32:40.409834+00:00", "kind": "site_page", "missing": false, "url": "https://libcloud.apache.org/about.html"}, {"content_hash": "75690e4218e4dc4c7aa3099bbb7a8765aa2cbe2f02e6e01e21807d0c721927ba", "fetched_at": "2026-08-29T10:32:40.412530+00:00", "kind": "site_page", "missing": false, "url": "https://libcloud.apache.org/getting-started.html"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:52:47.655866+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "39bf404f00a269539f238eacce0f030d11f7a23de0f1e8ef4559d4e2858244ca", "fetched_at": "2026-08-28T04:06:16.784308+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apache/libcloud"}, {"content_hash": "2d03289bad64417eb1519fbfe5bc3377774dd2160d6c1528a5afc6805314c8ff", "fetched_at": "2026-08-29T10:32:40.367161+00:00", "kind": "homepage", "missing": false, "url": "https://libcloud.apache.org"}, {"content_hash": "c62e25b318ca6cfc7f2ca6eb6a0190ccbbcacdaea7553d5c48134a53152ef02c", "fetched_at": "2026-08-29T10:32:40.409834+00:00", "kind": "site_page", "missing": false, "url": "https://libcloud.apache.org/about.html"}, {"content_hash": "75690e4218e4dc4c7aa3099bbb7a8765aa2cbe2f02e6e01e21807d0c721927ba", "fetched_at": "2026-08-29T10:32:40.412530+00:00", "kind": "site_page", "missing": false, "url": "https://libcloud.apache.org/getting-started.html"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:52:47.655866+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "39bf404f00a269539f238eacce0f030d11f7a23de0f1e8ef4559d4e2858244ca", "fetched_at": "2026-08-28T04:06:16.784308+00:00", "kind": "readme", "missing": false, "url": "https://github.com/apache/libcloud"}, {"content_hash": "2d03289bad64417eb1519fbfe5bc3377774dd2160d6c1528a5afc6805314c8ff", "fetched_at": "2026-08-29T10:32:40.367161+00:00", "kind": "homepage", "missing": false, "url": "https://libcloud.apache.org"}, {"content_hash": "c62e25b318ca6cfc7f2ca6eb6a0190ccbbcacdaea7553d5c48134a53152ef02c", "fetched_at": "2026-08-29T10:32:40.409834+00:00", "kind": "site_page", "missing": false, "url": "https://libcloud.apache.org/about.html"}, {"content_hash": "75690e4218e4dc4c7aa3099bbb7a8765aa2cbe2f02e6e01e21807d0c721927ba", "fetched_at": "2026-08-29T10:32:40.412530+00:00", "kind": "site_page", "missing": false, "url": "https://libcloud.apache.org/getting-started.html"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 98, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 6109, "days_push": 14, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 76, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}