{"adoption": {"forks": 144, "observed_at": "2026-08-28T04:04:44.713936+00:00", "stars": 1442}, "canonical_url": "https://ross.abutalabs.com/products/atoum", "card": {"archived": true, "artifact_type": "library", "description": "The modern, simple and intuitive PHP unit testing framework.", "domain": ["testing", "developer-tools", "programming-languages"], "enriched": true, "function": ["testing", "mocking"], "health_score": 10, "homepage": "http://atoum.org", "language": "PHP", "license": "NOASSERTION", "license_family": "other", "maturity": "active", "member_repos": ["atoum/atoum"], "name": "atoum/atoum", "platform": ["php", "cli"], "pushed_at": "2025-10-30T07:44:56+00:00", "repo": "atoum/atoum", "stars": 1442, "tags": ["unit-testing", "test-framework", "assertions", "mock-generator", "php8", "fluent-interface", "test-isolation", "bdd-style"], "topics": ["php", "unit-testing", "test", "test-framework", "atoum", "hacktoberfest"], "urls": [], "use_cases": ["write unit tests for a PHP project", "generate mocks and stubs for PHP classes", "run tests in parallel for faster feedback", "test PHP 8.x code with modern language features", "adopt a BDD-like given/when/then test style", "integrate unit testing into continuous integration pipelines"], "what_it_is": "atoum is a modern, standalone unit testing framework for PHP, distributed as a single PHAR archive. It offers fluent, natural-language-style asserters, an easy mock generator, and multiple execution engines (inline, isolated, concurrent) for fast and reliable tests.", "when_to_avoid": ["your team and tooling ecosystem is already standardized on PHPUnit", "you need a framework with broader third-party extension adoption", "you are testing non-PHP code"], "when_to_choose": ["you want a simple, standalone PHP test framework installable as a single PHAR", "you prefer fluent, readable assertions over PHPUnit's API", "you need built-in test isolation and concurrent execution", "you target modern PHP 8.0-8.4 features like enums, readonly properties, and property hooks"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/atoum", "repo": "atoum/atoum", "role": "main", "score": 10}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:04:44.713936+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T04:36:23.619350+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "386baa552102b921cc949b7f36a200cf83aa4a5b97f04a12d437c9cf311fefd5", "fetched_at": "2026-08-28T04:04:44.713936+00:00", "kind": "readme", "missing": false, "url": "https://github.com/atoum/atoum"}, {"content_hash": "f57e282ec798126f8aef0cbe0069ae9251cb289c6229731d3dcaf616da8fdd4f", "fetched_at": "2026-08-29T11:47:39.931676+00:00", "kind": "homepage", "missing": false, "url": "http://atoum.org"}, {"content_hash": "306ee1b95b26abbae039de8972b1f49c22a447878f2277eb0661269a95273647", "fetched_at": "2026-08-29T11:47:39.940969+00:00", "kind": "site_page", "missing": false, "url": "https://atoum.org/features.html"}, {"content_hash": "fc16cac8a3701d515bcc00079b0cd7972666dc0501f2e2c920aed57b244cc9f3", "fetched_at": "2026-08-29T11:47:39.946089+00:00", "kind": "site_page", "missing": false, "url": "http://atoum.org/about/contact.html"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:04:44.713936+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T04:36:23.619350+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "386baa552102b921cc949b7f36a200cf83aa4a5b97f04a12d437c9cf311fefd5", "fetched_at": "2026-08-28T04:04:44.713936+00:00", "kind": "readme", "missing": false, "url": "https://github.com/atoum/atoum"}, {"content_hash": "f57e282ec798126f8aef0cbe0069ae9251cb289c6229731d3dcaf616da8fdd4f", "fetched_at": "2026-08-29T11:47:39.931676+00:00", "kind": "homepage", "missing": false, "url": "http://atoum.org"}, {"content_hash": "306ee1b95b26abbae039de8972b1f49c22a447878f2277eb0661269a95273647", "fetched_at": "2026-08-29T11:47:39.940969+00:00", "kind": "site_page", "missing": false, "url": "https://atoum.org/features.html"}, {"content_hash": "fc16cac8a3701d515bcc00079b0cd7972666dc0501f2e2c920aed57b244cc9f3", "fetched_at": "2026-08-29T11:47:39.946089+00:00", "kind": "site_page", "missing": false, "url": "http://atoum.org/about/contact.html"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T04:36:23.619350+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "386baa552102b921cc949b7f36a200cf83aa4a5b97f04a12d437c9cf311fefd5", "fetched_at": "2026-08-28T04:04:44.713936+00:00", "kind": "readme", "missing": false, "url": "https://github.com/atoum/atoum"}, {"content_hash": "f57e282ec798126f8aef0cbe0069ae9251cb289c6229731d3dcaf616da8fdd4f", "fetched_at": "2026-08-29T11:47:39.931676+00:00", "kind": "homepage", "missing": false, "url": "http://atoum.org"}, {"content_hash": "306ee1b95b26abbae039de8972b1f49c22a447878f2277eb0661269a95273647", "fetched_at": "2026-08-29T11:47:39.940969+00:00", "kind": "site_page", "missing": false, "url": "https://atoum.org/features.html"}, {"content_hash": "fc16cac8a3701d515bcc00079b0cd7972666dc0501f2e2c920aed57b244cc9f3", "fetched_at": "2026-08-29T11:47:39.946089+00:00", "kind": "site_page", "missing": false, "url": "http://atoum.org/about/contact.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:04:44.713936+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:04:44.713936+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:04:44.713936+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T04:36:23.619350+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "386baa552102b921cc949b7f36a200cf83aa4a5b97f04a12d437c9cf311fefd5", "fetched_at": "2026-08-28T04:04:44.713936+00:00", "kind": "readme", "missing": false, "url": "https://github.com/atoum/atoum"}, {"content_hash": "f57e282ec798126f8aef0cbe0069ae9251cb289c6229731d3dcaf616da8fdd4f", "fetched_at": "2026-08-29T11:47:39.931676+00:00", "kind": "homepage", "missing": false, "url": "http://atoum.org"}, {"content_hash": "306ee1b95b26abbae039de8972b1f49c22a447878f2277eb0661269a95273647", "fetched_at": "2026-08-29T11:47:39.940969+00:00", "kind": "site_page", "missing": false, "url": "https://atoum.org/features.html"}, {"content_hash": "fc16cac8a3701d515bcc00079b0cd7972666dc0501f2e2c920aed57b244cc9f3", "fetched_at": "2026-08-29T11:47:39.946089+00:00", "kind": "site_page", "missing": false, "url": "http://atoum.org/about/contact.html"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:04:44.713936+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:04:44.713936+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T04:36:23.619350+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "386baa552102b921cc949b7f36a200cf83aa4a5b97f04a12d437c9cf311fefd5", "fetched_at": "2026-08-28T04:04:44.713936+00:00", "kind": "readme", "missing": false, "url": "https://github.com/atoum/atoum"}, {"content_hash": "f57e282ec798126f8aef0cbe0069ae9251cb289c6229731d3dcaf616da8fdd4f", "fetched_at": "2026-08-29T11:47:39.931676+00:00", "kind": "homepage", "missing": false, "url": "http://atoum.org"}, {"content_hash": "306ee1b95b26abbae039de8972b1f49c22a447878f2277eb0661269a95273647", "fetched_at": "2026-08-29T11:47:39.940969+00:00", "kind": "site_page", "missing": false, "url": "https://atoum.org/features.html"}, {"content_hash": "fc16cac8a3701d515bcc00079b0cd7972666dc0501f2e2c920aed57b244cc9f3", "fetched_at": "2026-08-29T11:47:39.946089+00:00", "kind": "site_page", "missing": false, "url": "http://atoum.org/about/contact.html"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:04:44.713936+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:04:44.713936+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:04:44.713936+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T04:36:23.619350+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "386baa552102b921cc949b7f36a200cf83aa4a5b97f04a12d437c9cf311fefd5", "fetched_at": "2026-08-28T04:04:44.713936+00:00", "kind": "readme", "missing": false, "url": "https://github.com/atoum/atoum"}, {"content_hash": "f57e282ec798126f8aef0cbe0069ae9251cb289c6229731d3dcaf616da8fdd4f", "fetched_at": "2026-08-29T11:47:39.931676+00:00", "kind": "homepage", "missing": false, "url": "http://atoum.org"}, {"content_hash": "306ee1b95b26abbae039de8972b1f49c22a447878f2277eb0661269a95273647", "fetched_at": "2026-08-29T11:47:39.940969+00:00", "kind": "site_page", "missing": false, "url": "https://atoum.org/features.html"}, {"content_hash": "fc16cac8a3701d515bcc00079b0cd7972666dc0501f2e2c920aed57b244cc9f3", "fetched_at": "2026-08-29T11:47:39.946089+00:00", "kind": "site_page", "missing": false, "url": "http://atoum.org/about/contact.html"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:04:44.713936+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:04:44.713936+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T04:36:23.619350+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "386baa552102b921cc949b7f36a200cf83aa4a5b97f04a12d437c9cf311fefd5", "fetched_at": "2026-08-28T04:04:44.713936+00:00", "kind": "readme", "missing": false, "url": "https://github.com/atoum/atoum"}, {"content_hash": "f57e282ec798126f8aef0cbe0069ae9251cb289c6229731d3dcaf616da8fdd4f", "fetched_at": "2026-08-29T11:47:39.931676+00:00", "kind": "homepage", "missing": false, "url": "http://atoum.org"}, {"content_hash": "306ee1b95b26abbae039de8972b1f49c22a447878f2277eb0661269a95273647", "fetched_at": "2026-08-29T11:47:39.940969+00:00", "kind": "site_page", "missing": false, "url": "https://atoum.org/features.html"}, {"content_hash": "fc16cac8a3701d515bcc00079b0cd7972666dc0501f2e2c920aed57b244cc9f3", "fetched_at": "2026-08-29T11:47:39.946089+00:00", "kind": "site_page", "missing": false, "url": "http://atoum.org/about/contact.html"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T04:36:23.619350+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "386baa552102b921cc949b7f36a200cf83aa4a5b97f04a12d437c9cf311fefd5", "fetched_at": "2026-08-28T04:04:44.713936+00:00", "kind": "readme", "missing": false, "url": "https://github.com/atoum/atoum"}, {"content_hash": "f57e282ec798126f8aef0cbe0069ae9251cb289c6229731d3dcaf616da8fdd4f", "fetched_at": "2026-08-29T11:47:39.931676+00:00", "kind": "homepage", "missing": false, "url": "http://atoum.org"}, {"content_hash": "306ee1b95b26abbae039de8972b1f49c22a447878f2277eb0661269a95273647", "fetched_at": "2026-08-29T11:47:39.940969+00:00", "kind": "site_page", "missing": false, "url": "https://atoum.org/features.html"}, {"content_hash": "fc16cac8a3701d515bcc00079b0cd7972666dc0501f2e2c920aed57b244cc9f3", "fetched_at": "2026-08-29T11:47:39.946089+00:00", "kind": "site_page", "missing": false, "url": "http://atoum.org/about/contact.html"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T04:36:23.619350+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "386baa552102b921cc949b7f36a200cf83aa4a5b97f04a12d437c9cf311fefd5", "fetched_at": "2026-08-28T04:04:44.713936+00:00", "kind": "readme", "missing": false, "url": "https://github.com/atoum/atoum"}, {"content_hash": "f57e282ec798126f8aef0cbe0069ae9251cb289c6229731d3dcaf616da8fdd4f", "fetched_at": "2026-08-29T11:47:39.931676+00:00", "kind": "homepage", "missing": false, "url": "http://atoum.org"}, {"content_hash": "306ee1b95b26abbae039de8972b1f49c22a447878f2277eb0661269a95273647", "fetched_at": "2026-08-29T11:47:39.940969+00:00", "kind": "site_page", "missing": false, "url": "https://atoum.org/features.html"}, {"content_hash": "fc16cac8a3701d515bcc00079b0cd7972666dc0501f2e2c920aed57b244cc9f3", "fetched_at": "2026-08-29T11:47:39.946089+00:00", "kind": "site_page", "missing": false, "url": "http://atoum.org/about/contact.html"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T04:36:23.619350+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "386baa552102b921cc949b7f36a200cf83aa4a5b97f04a12d437c9cf311fefd5", "fetched_at": "2026-08-28T04:04:44.713936+00:00", "kind": "readme", "missing": false, "url": "https://github.com/atoum/atoum"}, {"content_hash": "f57e282ec798126f8aef0cbe0069ae9251cb289c6229731d3dcaf616da8fdd4f", "fetched_at": "2026-08-29T11:47:39.931676+00:00", "kind": "homepage", "missing": false, "url": "http://atoum.org"}, {"content_hash": "306ee1b95b26abbae039de8972b1f49c22a447878f2277eb0661269a95273647", "fetched_at": "2026-08-29T11:47:39.940969+00:00", "kind": "site_page", "missing": false, "url": "https://atoum.org/features.html"}, {"content_hash": "fc16cac8a3701d515bcc00079b0cd7972666dc0501f2e2c920aed57b244cc9f3", "fetched_at": "2026-08-29T11:47:39.946089+00:00", "kind": "site_page", "missing": false, "url": "http://atoum.org/about/contact.html"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 49, "longevity": 100, "rhythm": 40}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["archived", "no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 5550, "days_push": 307, "days_rel": 323, "gap_med": 75.0, "n_releases_24m": 3}, "score": 10, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}