{"adoption": {"forks": 350, "observed_at": "2026-08-28T04:07:30.427003+00:00", "stars": 2926}, "canonical_url": "https://ross.abutalabs.com/products/fake-s3", "card": {"archived": true, "artifact_type": "cli-tool", "description": "A lightweight server clone of Amazon S3 that simulates most of the commands supported by S3 with minimal dependencies", "domain": ["developer-tools", "testing", "cloud-computing", "self-hosted"], "enriched": true, "function": ["http-server", "testing", "mock-api", "cli"], "health_score": 10, "homepage": null, "language": "Ruby", "license": null, "license_family": "other", "maturity": "maintenance", "member_repos": ["curtis0x/fake-s3"], "name": "curtis0x/fake-s3", "platform": ["cli", "ruby", "cross-platform"], "pushed_at": "2023-04-13T18:57:21+00:00", "repo": "curtis0x/fake-s3", "stars": 2926, "tags": ["s3-mock", "fake-s3", "object-storage", "development-tool", "ruby-gem"], "topics": [], "urls": [], "use_cases": ["test code that calls S3 without hitting real AWS", "run a local S3-compatible server for development", "avoid network and cost overhead when testing S3 integrations", "simulate S3 put, get, list, copy, and bucket operations in CI", "sandbox environment for testing s3cmd and S3 client libraries"], "what_it_is": "Fake S3 is a lightweight Ruby server that mimics the Amazon S3 API, supporting commands like put, get, list, copy, and bucket creation. It is intended as a development and testing tool so developers can exercise S3 calls locally without network access or AWS costs.", "when_to_avoid": ["you need a production-grade S3 replacement with full API fidelity", "you require a license-free solution, since recent versions require a license key", "you need actively maintained software with broad S3 feature coverage"], "when_to_choose": ["you need a minimal-dependency local S3 mock for tests", "you want to test S3 client code offline and for free", "you use Ruby tooling and want a simple gem-installable S3 server"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/fake-s3", "repo": "curtis0x/fake-s3", "role": "main", "score": 10}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:07:30.427003+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T07:33:36.658907+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "205e64e0beac66f72bf7507b240c8fddc914253a3ee20d4416afb1ecca8c0a0e", "fetched_at": "2026-08-28T04:07:30.427003+00:00", "kind": "readme", "missing": false, "url": "https://github.com/curtis0x/fake-s3"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:07:30.427003+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T07:33:36.658907+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "205e64e0beac66f72bf7507b240c8fddc914253a3ee20d4416afb1ecca8c0a0e", "fetched_at": "2026-08-28T04:07:30.427003+00:00", "kind": "readme", "missing": false, "url": "https://github.com/curtis0x/fake-s3"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T07:33:36.658907+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "205e64e0beac66f72bf7507b240c8fddc914253a3ee20d4416afb1ecca8c0a0e", "fetched_at": "2026-08-28T04:07:30.427003+00:00", "kind": "readme", "missing": false, "url": "https://github.com/curtis0x/fake-s3"}], "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:30.427003+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:07:30.427003+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:07:30.427003+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T07:33:36.658907+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "205e64e0beac66f72bf7507b240c8fddc914253a3ee20d4416afb1ecca8c0a0e", "fetched_at": "2026-08-28T04:07:30.427003+00:00", "kind": "readme", "missing": false, "url": "https://github.com/curtis0x/fake-s3"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:07:30.427003+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:07:30.427003+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T07:33:36.658907+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "205e64e0beac66f72bf7507b240c8fddc914253a3ee20d4416afb1ecca8c0a0e", "fetched_at": "2026-08-28T04:07:30.427003+00:00", "kind": "readme", "missing": false, "url": "https://github.com/curtis0x/fake-s3"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:07:30.427003+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:07:30.427003+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:07:30.427003+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T07:33:36.658907+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "205e64e0beac66f72bf7507b240c8fddc914253a3ee20d4416afb1ecca8c0a0e", "fetched_at": "2026-08-28T04:07:30.427003+00:00", "kind": "readme", "missing": false, "url": "https://github.com/curtis0x/fake-s3"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:07:30.427003+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:07:30.427003+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T07:33:36.658907+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "205e64e0beac66f72bf7507b240c8fddc914253a3ee20d4416afb1ecca8c0a0e", "fetched_at": "2026-08-28T04:07:30.427003+00:00", "kind": "readme", "missing": false, "url": "https://github.com/curtis0x/fake-s3"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T07:33:36.658907+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "205e64e0beac66f72bf7507b240c8fddc914253a3ee20d4416afb1ecca8c0a0e", "fetched_at": "2026-08-28T04:07:30.427003+00:00", "kind": "readme", "missing": false, "url": "https://github.com/curtis0x/fake-s3"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T07:33:36.658907+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "205e64e0beac66f72bf7507b240c8fddc914253a3ee20d4416afb1ecca8c0a0e", "fetched_at": "2026-08-28T04:07:30.427003+00:00", "kind": "readme", "missing": false, "url": "https://github.com/curtis0x/fake-s3"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T07:33:36.658907+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "205e64e0beac66f72bf7507b240c8fddc914253a3ee20d4416afb1ecca8c0a0e", "fetched_at": "2026-08-28T04:07:30.427003+00:00", "kind": "readme", "missing": false, "url": "https://github.com/curtis0x/fake-s3"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_releases", "archived", "no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 5256, "days_push": 1238, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 10, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}