{"adoption": {"forks": 630, "observed_at": "2026-08-28T04:05:11.402626+00:00", "stars": 1614}, "canonical_url": "https://ross.abutalabs.com/products/testlink-code", "card": {"archived": false, "artifact_type": "application", "description": "TestLink Open Source Test & Requirement Management System", "domain": ["testing", "developer-tools", "web-development"], "enriched": true, "function": ["testing", "web-framework", "gui", "self-hosted"], "health_score": 54, "homepage": null, "language": "PHP", "license": "GPL-2.0", "license_family": "copyleft", "maturity": "active", "member_repos": ["TestLinkOpenSourceTRMS/testlink-code"], "name": "TestLinkOpenSourceTRMS/testlink-code", "platform": ["php", "self-hosted", "cross-platform"], "pushed_at": "2025-12-08T11:02:07+00:00", "repo": "TestLinkOpenSourceTRMS/testlink-code", "stars": 1614, "tags": ["test-management", "test-execution", "qa", "test-plans", "requirement-management", "bug-tracking-integration", "quality-assurance", "web-server", "docker"], "topics": [], "urls": [], "use_cases": ["manage test cases and test suites for a QA team", "organize test cases into test plans and track execution results", "link requirements to test cases and track coverage", "integrate test management with JIRA or Mantis bug tracking", "self-host a test management tool for manual testing", "generate test reports and metrics for management"], "what_it_is": "TestLink is a web-based open source test management and test execution system for QA teams. It lets teams create and organize test cases into test plans, execute them, and track results dynamically, with integrations to issue trackers like JIRA and Mantis.", "when_to_avoid": ["you only need automated test execution or CI pipelines rather than manual test case management", "you need a modern UX out of the box - the 2.x redesign is still in progress and 1.9.x uses an older interface", "your stack is not PHP-based and you prefer tools with easier extension ecosystems"], "when_to_choose": ["you need a dedicated, self-hosted test management system with test plans, execution tracking, and reporting", "your QA team manages manual test cases and needs requirement traceability", "you want an open source (GPL) alternative to commercial test management tools with issue tracker integrations"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/testlink-code", "repo": "TestLinkOpenSourceTRMS/testlink-code", "role": "main", "score": 57}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:11.402626+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:50:19.991148+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "219fe7aafc428d0d0c08e5b8f965540d274ab5f91a375f57b9f0424e4ba74720", "fetched_at": "2026-08-28T04:05:11.402626+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TestLinkOpenSourceTRMS/testlink-code"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:11.402626+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:50:19.991148+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "219fe7aafc428d0d0c08e5b8f965540d274ab5f91a375f57b9f0424e4ba74720", "fetched_at": "2026-08-28T04:05:11.402626+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TestLinkOpenSourceTRMS/testlink-code"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:50:19.991148+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "219fe7aafc428d0d0c08e5b8f965540d274ab5f91a375f57b9f0424e4ba74720", "fetched_at": "2026-08-28T04:05:11.402626+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TestLinkOpenSourceTRMS/testlink-code"}], "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:05:11.402626+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:11.402626+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:11.402626+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:50:19.991148+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "219fe7aafc428d0d0c08e5b8f965540d274ab5f91a375f57b9f0424e4ba74720", "fetched_at": "2026-08-28T04:05:11.402626+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TestLinkOpenSourceTRMS/testlink-code"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:11.402626+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:11.402626+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:50:19.991148+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "219fe7aafc428d0d0c08e5b8f965540d274ab5f91a375f57b9f0424e4ba74720", "fetched_at": "2026-08-28T04:05:11.402626+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TestLinkOpenSourceTRMS/testlink-code"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:11.402626+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:11.402626+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:11.402626+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:50:19.991148+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "219fe7aafc428d0d0c08e5b8f965540d274ab5f91a375f57b9f0424e4ba74720", "fetched_at": "2026-08-28T04:05:11.402626+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TestLinkOpenSourceTRMS/testlink-code"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:11.402626+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:11.402626+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:50:19.991148+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "219fe7aafc428d0d0c08e5b8f965540d274ab5f91a375f57b9f0424e4ba74720", "fetched_at": "2026-08-28T04:05:11.402626+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TestLinkOpenSourceTRMS/testlink-code"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:50:19.991148+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "219fe7aafc428d0d0c08e5b8f965540d274ab5f91a375f57b9f0424e4ba74720", "fetched_at": "2026-08-28T04:05:11.402626+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TestLinkOpenSourceTRMS/testlink-code"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:50:19.991148+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "219fe7aafc428d0d0c08e5b8f965540d274ab5f91a375f57b9f0424e4ba74720", "fetched_at": "2026-08-28T04:05:11.402626+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TestLinkOpenSourceTRMS/testlink-code"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:50:19.991148+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "219fe7aafc428d0d0c08e5b8f965540d274ab5f91a375f57b9f0424e4ba74720", "fetched_at": "2026-08-28T04:05:11.402626+00:00", "kind": "readme", "missing": false, "url": "https://github.com/TestLinkOpenSourceTRMS/testlink-code"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 56, "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": 4280, "days_push": 268, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 57, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}