{"adoption": {"forks": 258, "observed_at": "2026-08-28T04:07:53.922588+00:00", "stars": 3290}, "canonical_url": "https://ross.abutalabs.com/products/rack-cors", "card": {"archived": false, "artifact_type": "library", "description": "Rack Middleware for handling Cross-Origin Resource Sharing (CORS), which makes cross-origin AJAX possible.", "domain": ["web-development", "backend", "apis", "security"], "enriched": true, "function": ["middleware", "http-server", "security", "web-framework"], "health_score": 33, "homepage": null, "language": "JavaScript", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["cyu/rack-cors"], "name": "cyu/rack-cors", "platform": ["ruby", "cross-platform"], "pushed_at": "2025-05-16T17:59:04+00:00", "repo": "cyu/rack-cors", "stars": 3290, "tags": ["cors", "rack", "rails", "ruby-gem", "cross-origin", "web-server"], "topics": [], "urls": [], "use_cases": ["enable CORS for a Rails API", "allow cross-origin AJAX requests in a Rack app", "configure allowed origins and headers for browser requests", "replace JSONP workarounds with proper CORS headers", "restrict API access to specific domains", "handle preflight OPTIONS requests in Ruby web apps"], "what_it_is": "Rack middleware that adds Cross-Origin Resource Sharing (CORS) support to Rack-compatible Ruby web applications, including Rails. It lets you declaratively configure allowed origins, headers, and HTTP methods so browsers can make cross-domain AJAX requests.", "when_to_avoid": ["your server is not Rack-based (e.g., Node, Go, nginx-only setups)", "you need CORS handled at the proxy/CDN layer rather than in app middleware", "you only serve same-origin requests and need no cross-origin access"], "when_to_choose": ["you run a Rack-based app (Rails, Sinatra) that a browser frontend on another origin consumes", "you need fine-grained per-resource CORS rules with regex origins and exposed headers", "you want the standard, widely-used CORS solution in the Ruby ecosystem"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/rack-cors", "repo": "cyu/rack-cors", "role": "main", "score": 42}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:07:53.922588+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:43:12.271356+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4caa45c187f9e8774e7bb70cfda98bb96d72d68cfc1c3291c61c963e95bd72a2", "fetched_at": "2026-08-28T04:07:53.922588+00:00", "kind": "readme", "missing": false, "url": "https://github.com/cyu/rack-cors"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:07:53.922588+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:43:12.271356+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4caa45c187f9e8774e7bb70cfda98bb96d72d68cfc1c3291c61c963e95bd72a2", "fetched_at": "2026-08-28T04:07:53.922588+00:00", "kind": "readme", "missing": false, "url": "https://github.com/cyu/rack-cors"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:43:12.271356+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4caa45c187f9e8774e7bb70cfda98bb96d72d68cfc1c3291c61c963e95bd72a2", "fetched_at": "2026-08-28T04:07:53.922588+00:00", "kind": "readme", "missing": false, "url": "https://github.com/cyu/rack-cors"}], "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:07:53.922588+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:07:53.922588+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:07:53.922588+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:43:12.271356+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4caa45c187f9e8774e7bb70cfda98bb96d72d68cfc1c3291c61c963e95bd72a2", "fetched_at": "2026-08-28T04:07:53.922588+00:00", "kind": "readme", "missing": false, "url": "https://github.com/cyu/rack-cors"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:07:53.922588+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:07:53.922588+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:43:12.271356+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4caa45c187f9e8774e7bb70cfda98bb96d72d68cfc1c3291c61c963e95bd72a2", "fetched_at": "2026-08-28T04:07:53.922588+00:00", "kind": "readme", "missing": false, "url": "https://github.com/cyu/rack-cors"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:07:53.922588+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:07:53.922588+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:07:53.922588+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:43:12.271356+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4caa45c187f9e8774e7bb70cfda98bb96d72d68cfc1c3291c61c963e95bd72a2", "fetched_at": "2026-08-28T04:07:53.922588+00:00", "kind": "readme", "missing": false, "url": "https://github.com/cyu/rack-cors"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:07:53.922588+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:07:53.922588+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:43:12.271356+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4caa45c187f9e8774e7bb70cfda98bb96d72d68cfc1c3291c61c963e95bd72a2", "fetched_at": "2026-08-28T04:07:53.922588+00:00", "kind": "readme", "missing": false, "url": "https://github.com/cyu/rack-cors"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:43:12.271356+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4caa45c187f9e8774e7bb70cfda98bb96d72d68cfc1c3291c61c963e95bd72a2", "fetched_at": "2026-08-28T04:07:53.922588+00:00", "kind": "readme", "missing": false, "url": "https://github.com/cyu/rack-cors"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:43:12.271356+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4caa45c187f9e8774e7bb70cfda98bb96d72d68cfc1c3291c61c963e95bd72a2", "fetched_at": "2026-08-28T04:07:53.922588+00:00", "kind": "readme", "missing": false, "url": "https://github.com/cyu/rack-cors"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:43:12.271356+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "4caa45c187f9e8774e7bb70cfda98bb96d72d68cfc1c3291c61c963e95bd72a2", "fetched_at": "2026-08-28T04:07:53.922588+00:00", "kind": "readme", "missing": false, "url": "https://github.com/cyu/rack-cors"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 21, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["no_releases"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 5936, "days_push": 474, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 42, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}