{"adoption": {"forks": 256, "observed_at": "2026-08-28T04:06:56.572434+00:00", "stars": 2493}, "canonical_url": "https://ross.abutalabs.com/products/paratest", "card": {"archived": false, "artifact_type": "cli-tool", "description": ":computer: Parallel testing for PHPUnit", "domain": ["testing", "developer-tools"], "enriched": true, "function": ["testing", "e2e-testing", "cli"], "health_score": 99, "homepage": null, "language": "PHP", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["paratestphp/paratest"], "name": "paratestphp/paratest", "platform": ["cli", "php", "cross-platform"], "pushed_at": "2026-08-23T05:29:15+00:00", "repo": "paratestphp/paratest", "stars": 2493, "tags": ["phpunit", "parallel-testing", "code-coverage", "composer", "php"], "topics": [], "urls": [], "use_cases": ["speed up slow phpunit test suites by running tests in parallel", "run phpunit tests across multiple cpu cores", "combine code coverage reports from parallel test processes", "parallelize tests by testcase or by individual test method", "give each parallel test process its own database via TEST_TOKEN"], "what_it_is": "ParaTest is a CLI tool that runs PHPUnit test suites in parallel across multiple processes. It requires zero configuration and can combine code coverage reports from all parallel workers into a single report.", "when_to_avoid": ["your project uses an older PHPUnit version, since only the latest is supported", "your tests are not isolated and share state like databases or files", "you use a testing framework other than PHPUnit"], "when_to_choose": ["you have a large PHPUnit suite that takes too long to run sequentially", "you want parallel testing with no extra bootstrap or configuration", "you need merged code coverage from parallel test runs"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/paratest", "repo": "paratestphp/paratest", "role": "main", "score": 99}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:56.572434+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:27:36.688938+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "36e5994e97e75200a126a2a31a6aeed70e342e4bc90f32cfb1b41aa124d6c641", "fetched_at": "2026-08-28T04:06:56.572434+00:00", "kind": "readme", "missing": false, "url": "https://github.com/paratestphp/paratest"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:56.572434+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:27:36.688938+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "36e5994e97e75200a126a2a31a6aeed70e342e4bc90f32cfb1b41aa124d6c641", "fetched_at": "2026-08-28T04:06:56.572434+00:00", "kind": "readme", "missing": false, "url": "https://github.com/paratestphp/paratest"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:27:36.688938+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "36e5994e97e75200a126a2a31a6aeed70e342e4bc90f32cfb1b41aa124d6c641", "fetched_at": "2026-08-28T04:06:56.572434+00:00", "kind": "readme", "missing": false, "url": "https://github.com/paratestphp/paratest"}], "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:56.572434+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:56.572434+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:56.572434+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:27:36.688938+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "36e5994e97e75200a126a2a31a6aeed70e342e4bc90f32cfb1b41aa124d6c641", "fetched_at": "2026-08-28T04:06:56.572434+00:00", "kind": "readme", "missing": false, "url": "https://github.com/paratestphp/paratest"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:56.572434+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:56.572434+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:27:36.688938+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "36e5994e97e75200a126a2a31a6aeed70e342e4bc90f32cfb1b41aa124d6c641", "fetched_at": "2026-08-28T04:06:56.572434+00:00", "kind": "readme", "missing": false, "url": "https://github.com/paratestphp/paratest"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:56.572434+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:56.572434+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:56.572434+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:27:36.688938+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "36e5994e97e75200a126a2a31a6aeed70e342e4bc90f32cfb1b41aa124d6c641", "fetched_at": "2026-08-28T04:06:56.572434+00:00", "kind": "readme", "missing": false, "url": "https://github.com/paratestphp/paratest"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:56.572434+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:56.572434+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:27:36.688938+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "36e5994e97e75200a126a2a31a6aeed70e342e4bc90f32cfb1b41aa124d6c641", "fetched_at": "2026-08-28T04:06:56.572434+00:00", "kind": "readme", "missing": false, "url": "https://github.com/paratestphp/paratest"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:27:36.688938+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "36e5994e97e75200a126a2a31a6aeed70e342e4bc90f32cfb1b41aa124d6c641", "fetched_at": "2026-08-28T04:06:56.572434+00:00", "kind": "readme", "missing": false, "url": "https://github.com/paratestphp/paratest"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:27:36.688938+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "36e5994e97e75200a126a2a31a6aeed70e342e4bc90f32cfb1b41aa124d6c641", "fetched_at": "2026-08-28T04:06:56.572434+00:00", "kind": "readme", "missing": false, "url": "https://github.com/paratestphp/paratest"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:27:36.688938+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "36e5994e97e75200a126a2a31a6aeed70e342e4bc90f32cfb1b41aa124d6c641", "fetched_at": "2026-08-28T04:06:56.572434+00:00", "kind": "readme", "missing": false, "url": "https://github.com/paratestphp/paratest"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 98}, "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": 5068, "days_push": 10, "days_rel": 16, "gap_med": 8.0, "n_releases_24m": 55}, "score": 99, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}