{"adoption": {"forks": 125, "observed_at": "2026-08-28T04:03:21.615864+00:00", "stars": 1046}, "canonical_url": "https://ross.abutalabs.com/products/pinterest-pinball", "card": {"archived": true, "artifact_type": "service", "description": "Pinball is a scalable workflow manager", "domain": ["self-hosted"], "enriched": true, "function": ["workflow-automation", "scheduling", "web-framework", "developer-tools"], "health_score": 10, "homepage": null, "language": "JavaScript", "license": "Apache-2.0", "license_family": "permissive", "maturity": "abandoned", "member_repos": ["pinterest/pinball"], "name": "pinterest/pinball", "platform": ["python", "self-hosted"], "pushed_at": "2019-12-10T19:01:58+00:00", "repo": "pinterest/pinball", "stars": 1046, "tags": ["workflow-manager", "job-scheduler", "data-pipelines", "unmaintained", "mysql-backend", "automation", "data-engineering", "devops", "linux"], "topics": [], "urls": [], "use_cases": ["schedule and run recurring data pipeline jobs", "orchestrate multi-step workflows with retries and priorities", "self-host a workflow manager with a web UI", "manage job dependencies and overrun policies", "monitor scheduled job execution and get per-job email alerts"], "what_it_is": "Pinball is a scalable workflow manager originally developed at Pinterest, providing scheduling, execution, and monitoring of job workflows via master, scheduler, worker, and UI components. It stores workflow state in MySQL and is no longer actively maintained.", "when_to_avoid": ["you're starting a new project - it's unmaintained since Pinterest archived active development", "you need modern workflow features, active community support, or recent security patches", "you can't run MySQL as persistent storage"], "when_to_choose": ["you need a simple, horizontally scalable workflow scheduler backed by MySQL", "you want an admin-friendly scheduler that can be upgraded without aborting running workflows", "you're maintaining an existing Pinball deployment"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/pinterest-pinball", "repo": "pinterest/pinball", "role": "main", "score": 10}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:03:21.615864+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T07:01:59.204708+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ea3538d4fdac42f7825af2c4ab6c4671e0f479a3bf4612eed93a020d94540127", "fetched_at": "2026-08-28T04:03:21.615864+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pinterest/pinball"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:03:21.615864+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T07:01:59.204708+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ea3538d4fdac42f7825af2c4ab6c4671e0f479a3bf4612eed93a020d94540127", "fetched_at": "2026-08-28T04:03:21.615864+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pinterest/pinball"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T07:01:59.204708+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ea3538d4fdac42f7825af2c4ab6c4671e0f479a3bf4612eed93a020d94540127", "fetched_at": "2026-08-28T04:03:21.615864+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pinterest/pinball"}], "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:03:21.615864+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:03:21.615864+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:03:21.615864+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T07:01:59.204708+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ea3538d4fdac42f7825af2c4ab6c4671e0f479a3bf4612eed93a020d94540127", "fetched_at": "2026-08-28T04:03:21.615864+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pinterest/pinball"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:03:21.615864+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:03:21.615864+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T07:01:59.204708+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ea3538d4fdac42f7825af2c4ab6c4671e0f479a3bf4612eed93a020d94540127", "fetched_at": "2026-08-28T04:03:21.615864+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pinterest/pinball"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:03:21.615864+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:03:21.615864+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:03:21.615864+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T07:01:59.204708+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ea3538d4fdac42f7825af2c4ab6c4671e0f479a3bf4612eed93a020d94540127", "fetched_at": "2026-08-28T04:03:21.615864+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pinterest/pinball"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:03:21.615864+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:03:21.615864+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T07:01:59.204708+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ea3538d4fdac42f7825af2c4ab6c4671e0f479a3bf4612eed93a020d94540127", "fetched_at": "2026-08-28T04:03:21.615864+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pinterest/pinball"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T07:01:59.204708+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ea3538d4fdac42f7825af2c4ab6c4671e0f479a3bf4612eed93a020d94540127", "fetched_at": "2026-08-28T04:03:21.615864+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pinterest/pinball"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T07:01:59.204708+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ea3538d4fdac42f7825af2c4ab6c4671e0f479a3bf4612eed93a020d94540127", "fetched_at": "2026-08-28T04:03:21.615864+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pinterest/pinball"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T07:01:59.204708+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "ea3538d4fdac42f7825af2c4ab6c4671e0f479a3bf4612eed93a020d94540127", "fetched_at": "2026-08-28T04:03:21.615864+00:00", "kind": "readme", "missing": false, "url": "https://github.com/pinterest/pinball"}], "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"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 4200, "days_push": 2458, "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}}