{"adoption": {"forks": 1656, "observed_at": "2026-08-28T04:10:31.328506+00:00", "stars": 9480}, "canonical_url": "https://ross.abutalabs.com/products/resque", "card": {"archived": false, "artifact_type": "library", "description": "Resque is a Redis-backed Ruby library for creating background jobs, placing them on multiple queues, and processing them later.", "domain": ["backend", "web-development", "developer-tools"], "enriched": true, "function": ["message-queue", "scheduling", "workflow-automation"], "health_score": 94, "homepage": "http://resque.github.io/", "language": "Ruby", "license": "MIT", "license_family": "permissive", "maturity": "stable", "member_repos": ["resque/resque", "resque/resque-scheduler"], "name": "Resque", "platform": ["ruby"], "pushed_at": "2026-07-28T13:56:54+00:00", "repo": "resque/resque", "stars": 9480, "tags": ["background-jobs", "job-queue", "redis", "worker", "sinatra-dashboard", "activejob", "linux", "macos"], "topics": ["queue", "background-jobs", "job-scheduler", "ruby", "job-queue", "asynchronous-tasks", "asynctask", "background-worker", "background-service", "job-management"], "urls": [{"kind": "homepage", "url": "http://resque.github.io/"}], "use_cases": ["run background jobs in a Ruby or Rails app", "process asynchronous tasks like sending emails or generating archives", "distribute job workers across multiple machines backed by Redis", "monitor queue contents, worker status, and job failures from a web UI", "schedule delayed and recurring jobs with resque-scheduler", "prioritize jobs across multiple named queues"], "what_it_is": "Resque is a Redis-backed Ruby library for creating background jobs, placing them on multiple queues, and processing them later with forked worker processes. It includes a Rake task for running workers and a Sinatra web frontend for monitoring queues, jobs, workers, and failures.", "when_to_avoid": ["you need high-throughput threaded job processing with lower memory overhead (consider Sidekiq)", "your project requires Ruby 2.x (use Resque 2.x or another library)", "you don't want to operate a Redis server", "you need a language-agnostic or polyglot job system"], "when_to_choose": ["you use Ruby/Rails and want a battle-tested Redis-backed job queue", "you want process-per-job isolation to avoid memory leaks and thread-safety issues", "you need a built-in web dashboard for queue and failure monitoring", "you rely on a mature plugin ecosystem around Resque"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/repos/resque/resque", "repo": "resque/resque", "role": "main", "score": 74}, {"path": "/repos/resque/resque-scheduler", "repo": "resque/resque-scheduler", "role": "plugin", "score": 73}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:10:31.328506+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T17:22:03.685211+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "37bf30f7b2697a85e351dfe9b86700389aa7740cc1c909fd0c1c37383bf95b24", "fetched_at": "2026-08-28T04:10:31.328506+00:00", "kind": "readme", "missing": false, "url": "https://github.com/resque/resque"}, {"content_hash": "5f3ab7da04f703283eb663efbac12de9f55418c5a169394dcffd6c37e2de5e95", "fetched_at": "2026-08-29T08:21:54.550784+00:00", "kind": "homepage", "missing": false, "url": "http://resque.github.io/"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:10:31.328506+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T17:22:03.685211+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "37bf30f7b2697a85e351dfe9b86700389aa7740cc1c909fd0c1c37383bf95b24", "fetched_at": "2026-08-28T04:10:31.328506+00:00", "kind": "readme", "missing": false, "url": "https://github.com/resque/resque"}, {"content_hash": "5f3ab7da04f703283eb663efbac12de9f55418c5a169394dcffd6c37e2de5e95", "fetched_at": "2026-08-29T08:21:54.550784+00:00", "kind": "homepage", "missing": false, "url": "http://resque.github.io/"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T17:22:03.685211+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "37bf30f7b2697a85e351dfe9b86700389aa7740cc1c909fd0c1c37383bf95b24", "fetched_at": "2026-08-28T04:10:31.328506+00:00", "kind": "readme", "missing": false, "url": "https://github.com/resque/resque"}, {"content_hash": "5f3ab7da04f703283eb663efbac12de9f55418c5a169394dcffd6c37e2de5e95", "fetched_at": "2026-08-29T08:21:54.550784+00:00", "kind": "homepage", "missing": false, "url": "http://resque.github.io/"}], "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:10:31.328506+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:10:31.328506+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:10:31.328506+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T17:22:03.685211+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "37bf30f7b2697a85e351dfe9b86700389aa7740cc1c909fd0c1c37383bf95b24", "fetched_at": "2026-08-28T04:10:31.328506+00:00", "kind": "readme", "missing": false, "url": "https://github.com/resque/resque"}, {"content_hash": "5f3ab7da04f703283eb663efbac12de9f55418c5a169394dcffd6c37e2de5e95", "fetched_at": "2026-08-29T08:21:54.550784+00:00", "kind": "homepage", "missing": false, "url": "http://resque.github.io/"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:10:31.328506+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:10:31.328506+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T17:22:03.685211+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "37bf30f7b2697a85e351dfe9b86700389aa7740cc1c909fd0c1c37383bf95b24", "fetched_at": "2026-08-28T04:10:31.328506+00:00", "kind": "readme", "missing": false, "url": "https://github.com/resque/resque"}, {"content_hash": "5f3ab7da04f703283eb663efbac12de9f55418c5a169394dcffd6c37e2de5e95", "fetched_at": "2026-08-29T08:21:54.550784+00:00", "kind": "homepage", "missing": false, "url": "http://resque.github.io/"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:10:31.328506+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:10:31.328506+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:10:31.328506+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T17:22:03.685211+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "37bf30f7b2697a85e351dfe9b86700389aa7740cc1c909fd0c1c37383bf95b24", "fetched_at": "2026-08-28T04:10:31.328506+00:00", "kind": "readme", "missing": false, "url": "https://github.com/resque/resque"}, {"content_hash": "5f3ab7da04f703283eb663efbac12de9f55418c5a169394dcffd6c37e2de5e95", "fetched_at": "2026-08-29T08:21:54.550784+00:00", "kind": "homepage", "missing": false, "url": "http://resque.github.io/"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:10:31.328506+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:10:31.328506+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T17:22:03.685211+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "37bf30f7b2697a85e351dfe9b86700389aa7740cc1c909fd0c1c37383bf95b24", "fetched_at": "2026-08-28T04:10:31.328506+00:00", "kind": "readme", "missing": false, "url": "https://github.com/resque/resque"}, {"content_hash": "5f3ab7da04f703283eb663efbac12de9f55418c5a169394dcffd6c37e2de5e95", "fetched_at": "2026-08-29T08:21:54.550784+00:00", "kind": "homepage", "missing": false, "url": "http://resque.github.io/"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T17:22:03.685211+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "37bf30f7b2697a85e351dfe9b86700389aa7740cc1c909fd0c1c37383bf95b24", "fetched_at": "2026-08-28T04:10:31.328506+00:00", "kind": "readme", "missing": false, "url": "https://github.com/resque/resque"}, {"content_hash": "5f3ab7da04f703283eb663efbac12de9f55418c5a169394dcffd6c37e2de5e95", "fetched_at": "2026-08-29T08:21:54.550784+00:00", "kind": "homepage", "missing": false, "url": "http://resque.github.io/"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T17:22:03.685211+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "37bf30f7b2697a85e351dfe9b86700389aa7740cc1c909fd0c1c37383bf95b24", "fetched_at": "2026-08-28T04:10:31.328506+00:00", "kind": "readme", "missing": false, "url": "https://github.com/resque/resque"}, {"content_hash": "5f3ab7da04f703283eb663efbac12de9f55418c5a169394dcffd6c37e2de5e95", "fetched_at": "2026-08-29T08:21:54.550784+00:00", "kind": "homepage", "missing": false, "url": "http://resque.github.io/"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T17:22:03.685211+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "37bf30f7b2697a85e351dfe9b86700389aa7740cc1c909fd0c1c37383bf95b24", "fetched_at": "2026-08-28T04:10:31.328506+00:00", "kind": "readme", "missing": false, "url": "https://github.com/resque/resque"}, {"content_hash": "5f3ab7da04f703283eb663efbac12de9f55418c5a169394dcffd6c37e2de5e95", "fetched_at": "2026-08-29T08:21:54.550784+00:00", "kind": "homepage", "missing": false, "url": "http://resque.github.io/"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 94, "longevity": 100, "rhythm": 33}, "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": 6231, "days_push": 36, "days_rel": 233, "gap_med": 378, "n_releases_24m": 2}, "score": 74, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}