{"adoption": {"forks": 1633, "observed_at": "2026-08-28T04:11:05.308909+00:00", "stars": 14012}, "canonical_url": "https://ross.abutalabs.com/products/openresty", "card": {"archived": false, "artifact_type": "framework", "description": "High Performance Web Platform Based on Nginx and LuaJIT", "domain": ["web-development", "backend", "apis", "developer-tools", "performance", "self-hosted"], "enriched": true, "function": ["web-framework", "http-server", "api-gateway", "middleware", "proxy", "caching", "routing"], "health_score": 95, "homepage": "https://openresty.org", "language": "C", "license": "NOASSERTION", "license_family": "other", "maturity": "stable", "member_repos": ["openresty/openresty", "openresty/docker-openresty", "openresty/openresty.org", "openresty/echo-nginx-module", "openresty/headers-more-nginx-module", "openresty/lua-resty-redis", "openresty/luajit2", "openresty/lua-nginx-module"], "name": "OpenResty", "platform": ["windows", "cross-platform", "self-hosted"], "pushed_at": "2026-08-24T10:25:41+00:00", "repo": "openresty/openresty", "stars": 14012, "tags": ["nginx", "luajit", "lua", "web-server", "api-gateway", "reverse-proxy", "high-concurrency", "scriptable-server", "linux", "macos", "docker"], "topics": [], "urls": [{"kind": "homepage", "url": "https://openresty.org"}, {"kind": "site_page", "url": "https://openresty.org/en/installation.html"}, {"kind": "site_page", "url": "https://openresty.org/en/getting-started.html"}, {"kind": "site_page", "url": "https://openresty.org/en/faq.html"}, {"kind": "site_page", "url": "https://openresty.org/en/about.html"}], "use_cases": ["build a high-performance API gateway with Lua scripting", "run a web server that handles 100k+ concurrent connections", "script nginx request handling in Lua", "build a reverse proxy with custom routing logic", "implement rate limiting and caching at the edge", "create a web application firewall", "connect nginx directly to Redis or MySQL non-blockingly", "build dynamic web services for mobile backends"], "what_it_is": "OpenResty is a full-fledged web platform that bundles an enhanced Nginx core, LuaJIT, and many Nginx modules and Lua libraries into a single scriptable web application server. It lets developers build high-performance web applications, APIs, and dynamic gateways entirely in Lua inside Nginx, handling 10K-1000K+ concurrent connections per server.", "when_to_avoid": ["you just need a simple static file server - plain nginx is lighter", "your team prefers mainstream ecosystems like Node.js, Go, or Python web frameworks", "you need complex business logic better suited to a general-purpose application framework", "you rely on libraries that require standard Lua versions rather than LuaJIT/Lua 5.1"], "when_to_choose": ["you need extreme concurrency and low latency on a single box", "you want to script nginx behavior with Lua instead of writing C modules", "you're building gateways, CDNs, WAFs, or API middleware", "you want non-blocking I/O to backends like Redis, MySQL, or Memcached from within nginx"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/repos/openresty/openresty", "repo": "openresty/openresty", "role": "main", "score": 82}, {"path": "/repos/openresty/lua-nginx-module", "repo": "openresty/lua-nginx-module", "role": "backend", "score": 77}, {"path": "/repos/openresty/lua-resty-redis", "repo": "openresty/lua-resty-redis", "role": "sdk", "score": 67}, {"path": "/repos/openresty/headers-more-nginx-module", "repo": "openresty/headers-more-nginx-module", "role": "plugin", "score": 77}, {"path": "/repos/openresty/luajit2", "repo": "openresty/luajit2", "role": "backend", "score": 70}, {"path": "/repos/openresty/openresty.org", "repo": "openresty/openresty.org", "role": "docs", "score": 77}, {"path": "/repos/openresty/echo-nginx-module", "repo": "openresty/echo-nginx-module", "role": "plugin", "score": 77}, {"path": "/repos/openresty/docker-openresty", "repo": "openresty/docker-openresty", "role": "infra", "score": 64}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:11:05.308909+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T17:12:52.583733+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0c1411130336000089acd312d51d419efa708245f79076a08fc835eb5016b17f", "fetched_at": "2026-08-28T04:11:05.308909+00:00", "kind": "readme", "missing": false, "url": "https://github.com/openresty/openresty"}, {"content_hash": "55695d6c692b5ca7ca45b3998044ecfa823be9a9884c9d82afd5a038cbf41ee8", "fetched_at": "2026-08-29T08:06:52.928267+00:00", "kind": "homepage", "missing": false, "url": "https://openresty.org"}, {"content_hash": "510390367cea2c254571b69223a796ff8e6b5ee9b5187a825a3e8fe4effa42bd", "fetched_at": "2026-08-29T08:06:52.931174+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/installation.html"}, {"content_hash": "9707fde2337fca976a61db7a1df479e8a4d797bafb61a6734f4a3feb23ddfb7c", "fetched_at": "2026-08-29T08:06:52.933374+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/getting-started.html"}, {"content_hash": "c0f9a7e88db862a7e3165ce35ee36e892f0c2577505ae45f4a7a16947958509f", "fetched_at": "2026-08-29T08:06:52.937736+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/about.html"}, {"content_hash": "4480b837ab41bcd6f8cb39ae00a991f3c603aaf6f6645f6a0e996a4e20165c94", "fetched_at": "2026-08-29T08:06:52.945615+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1019003.html"}, {"content_hash": "9204822eb141717e3539232c70168f8ef275c2e8207e1445f3ce6d691694c432", "fetched_at": "2026-08-29T08:06:52.935389+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/faq.html"}, {"content_hash": "20513910d97e5347ce9494d078f7df0b9a9c3c22d159ebe35dd1b6ce34d54a82", "fetched_at": "2026-08-29T08:06:52.939753+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1025003.html"}, {"content_hash": "8f7bbc444208de7f013990313928d1ac078e4c901fe01a764a765ec49066778b", "fetched_at": "2026-08-29T08:06:52.941745+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1002007.html"}, {"content_hash": "a64cea6dcec32ae1c603a6865f0c5fca69be2eb604401772840dead1995acc10", "fetched_at": "2026-08-29T08:06:52.943765+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1000010.html"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:11:05.308909+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T17:12:52.583733+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0c1411130336000089acd312d51d419efa708245f79076a08fc835eb5016b17f", "fetched_at": "2026-08-28T04:11:05.308909+00:00", "kind": "readme", "missing": false, "url": "https://github.com/openresty/openresty"}, {"content_hash": "55695d6c692b5ca7ca45b3998044ecfa823be9a9884c9d82afd5a038cbf41ee8", "fetched_at": "2026-08-29T08:06:52.928267+00:00", "kind": "homepage", "missing": false, "url": "https://openresty.org"}, {"content_hash": "510390367cea2c254571b69223a796ff8e6b5ee9b5187a825a3e8fe4effa42bd", "fetched_at": "2026-08-29T08:06:52.931174+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/installation.html"}, {"content_hash": "9707fde2337fca976a61db7a1df479e8a4d797bafb61a6734f4a3feb23ddfb7c", "fetched_at": "2026-08-29T08:06:52.933374+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/getting-started.html"}, {"content_hash": "c0f9a7e88db862a7e3165ce35ee36e892f0c2577505ae45f4a7a16947958509f", "fetched_at": "2026-08-29T08:06:52.937736+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/about.html"}, {"content_hash": "4480b837ab41bcd6f8cb39ae00a991f3c603aaf6f6645f6a0e996a4e20165c94", "fetched_at": "2026-08-29T08:06:52.945615+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1019003.html"}, {"content_hash": "9204822eb141717e3539232c70168f8ef275c2e8207e1445f3ce6d691694c432", "fetched_at": "2026-08-29T08:06:52.935389+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/faq.html"}, {"content_hash": "20513910d97e5347ce9494d078f7df0b9a9c3c22d159ebe35dd1b6ce34d54a82", "fetched_at": "2026-08-29T08:06:52.939753+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1025003.html"}, {"content_hash": "8f7bbc444208de7f013990313928d1ac078e4c901fe01a764a765ec49066778b", "fetched_at": "2026-08-29T08:06:52.941745+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1002007.html"}, {"content_hash": "a64cea6dcec32ae1c603a6865f0c5fca69be2eb604401772840dead1995acc10", "fetched_at": "2026-08-29T08:06:52.943765+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1000010.html"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T17:12:52.583733+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0c1411130336000089acd312d51d419efa708245f79076a08fc835eb5016b17f", "fetched_at": "2026-08-28T04:11:05.308909+00:00", "kind": "readme", "missing": false, "url": "https://github.com/openresty/openresty"}, {"content_hash": "55695d6c692b5ca7ca45b3998044ecfa823be9a9884c9d82afd5a038cbf41ee8", "fetched_at": "2026-08-29T08:06:52.928267+00:00", "kind": "homepage", "missing": false, "url": "https://openresty.org"}, {"content_hash": "510390367cea2c254571b69223a796ff8e6b5ee9b5187a825a3e8fe4effa42bd", "fetched_at": "2026-08-29T08:06:52.931174+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/installation.html"}, {"content_hash": "9707fde2337fca976a61db7a1df479e8a4d797bafb61a6734f4a3feb23ddfb7c", "fetched_at": "2026-08-29T08:06:52.933374+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/getting-started.html"}, {"content_hash": "c0f9a7e88db862a7e3165ce35ee36e892f0c2577505ae45f4a7a16947958509f", "fetched_at": "2026-08-29T08:06:52.937736+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/about.html"}, {"content_hash": "4480b837ab41bcd6f8cb39ae00a991f3c603aaf6f6645f6a0e996a4e20165c94", "fetched_at": "2026-08-29T08:06:52.945615+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1019003.html"}, {"content_hash": "9204822eb141717e3539232c70168f8ef275c2e8207e1445f3ce6d691694c432", "fetched_at": "2026-08-29T08:06:52.935389+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/faq.html"}, {"content_hash": "20513910d97e5347ce9494d078f7df0b9a9c3c22d159ebe35dd1b6ce34d54a82", "fetched_at": "2026-08-29T08:06:52.939753+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1025003.html"}, {"content_hash": "8f7bbc444208de7f013990313928d1ac078e4c901fe01a764a765ec49066778b", "fetched_at": "2026-08-29T08:06:52.941745+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1002007.html"}, {"content_hash": "a64cea6dcec32ae1c603a6865f0c5fca69be2eb604401772840dead1995acc10", "fetched_at": "2026-08-29T08:06:52.943765+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1000010.html"}], "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:11:05.308909+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:11:05.308909+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:11:05.308909+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T17:12:52.583733+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0c1411130336000089acd312d51d419efa708245f79076a08fc835eb5016b17f", "fetched_at": "2026-08-28T04:11:05.308909+00:00", "kind": "readme", "missing": false, "url": "https://github.com/openresty/openresty"}, {"content_hash": "55695d6c692b5ca7ca45b3998044ecfa823be9a9884c9d82afd5a038cbf41ee8", "fetched_at": "2026-08-29T08:06:52.928267+00:00", "kind": "homepage", "missing": false, "url": "https://openresty.org"}, {"content_hash": "510390367cea2c254571b69223a796ff8e6b5ee9b5187a825a3e8fe4effa42bd", "fetched_at": "2026-08-29T08:06:52.931174+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/installation.html"}, {"content_hash": "9707fde2337fca976a61db7a1df479e8a4d797bafb61a6734f4a3feb23ddfb7c", "fetched_at": "2026-08-29T08:06:52.933374+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/getting-started.html"}, {"content_hash": "c0f9a7e88db862a7e3165ce35ee36e892f0c2577505ae45f4a7a16947958509f", "fetched_at": "2026-08-29T08:06:52.937736+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/about.html"}, {"content_hash": "4480b837ab41bcd6f8cb39ae00a991f3c603aaf6f6645f6a0e996a4e20165c94", "fetched_at": "2026-08-29T08:06:52.945615+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1019003.html"}, {"content_hash": "9204822eb141717e3539232c70168f8ef275c2e8207e1445f3ce6d691694c432", "fetched_at": "2026-08-29T08:06:52.935389+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/faq.html"}, {"content_hash": "20513910d97e5347ce9494d078f7df0b9a9c3c22d159ebe35dd1b6ce34d54a82", "fetched_at": "2026-08-29T08:06:52.939753+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1025003.html"}, {"content_hash": "8f7bbc444208de7f013990313928d1ac078e4c901fe01a764a765ec49066778b", "fetched_at": "2026-08-29T08:06:52.941745+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1002007.html"}, {"content_hash": "a64cea6dcec32ae1c603a6865f0c5fca69be2eb604401772840dead1995acc10", "fetched_at": "2026-08-29T08:06:52.943765+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1000010.html"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:11:05.308909+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:11:05.308909+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T17:12:52.583733+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0c1411130336000089acd312d51d419efa708245f79076a08fc835eb5016b17f", "fetched_at": "2026-08-28T04:11:05.308909+00:00", "kind": "readme", "missing": false, "url": "https://github.com/openresty/openresty"}, {"content_hash": "55695d6c692b5ca7ca45b3998044ecfa823be9a9884c9d82afd5a038cbf41ee8", "fetched_at": "2026-08-29T08:06:52.928267+00:00", "kind": "homepage", "missing": false, "url": "https://openresty.org"}, {"content_hash": "510390367cea2c254571b69223a796ff8e6b5ee9b5187a825a3e8fe4effa42bd", "fetched_at": "2026-08-29T08:06:52.931174+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/installation.html"}, {"content_hash": "9707fde2337fca976a61db7a1df479e8a4d797bafb61a6734f4a3feb23ddfb7c", "fetched_at": "2026-08-29T08:06:52.933374+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/getting-started.html"}, {"content_hash": "c0f9a7e88db862a7e3165ce35ee36e892f0c2577505ae45f4a7a16947958509f", "fetched_at": "2026-08-29T08:06:52.937736+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/about.html"}, {"content_hash": "4480b837ab41bcd6f8cb39ae00a991f3c603aaf6f6645f6a0e996a4e20165c94", "fetched_at": "2026-08-29T08:06:52.945615+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1019003.html"}, {"content_hash": "9204822eb141717e3539232c70168f8ef275c2e8207e1445f3ce6d691694c432", "fetched_at": "2026-08-29T08:06:52.935389+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/faq.html"}, {"content_hash": "20513910d97e5347ce9494d078f7df0b9a9c3c22d159ebe35dd1b6ce34d54a82", "fetched_at": "2026-08-29T08:06:52.939753+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1025003.html"}, {"content_hash": "8f7bbc444208de7f013990313928d1ac078e4c901fe01a764a765ec49066778b", "fetched_at": "2026-08-29T08:06:52.941745+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1002007.html"}, {"content_hash": "a64cea6dcec32ae1c603a6865f0c5fca69be2eb604401772840dead1995acc10", "fetched_at": "2026-08-29T08:06:52.943765+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1000010.html"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:11:05.308909+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:11:05.308909+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:11:05.308909+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T17:12:52.583733+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0c1411130336000089acd312d51d419efa708245f79076a08fc835eb5016b17f", "fetched_at": "2026-08-28T04:11:05.308909+00:00", "kind": "readme", "missing": false, "url": "https://github.com/openresty/openresty"}, {"content_hash": "55695d6c692b5ca7ca45b3998044ecfa823be9a9884c9d82afd5a038cbf41ee8", "fetched_at": "2026-08-29T08:06:52.928267+00:00", "kind": "homepage", "missing": false, "url": "https://openresty.org"}, {"content_hash": "510390367cea2c254571b69223a796ff8e6b5ee9b5187a825a3e8fe4effa42bd", "fetched_at": "2026-08-29T08:06:52.931174+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/installation.html"}, {"content_hash": "9707fde2337fca976a61db7a1df479e8a4d797bafb61a6734f4a3feb23ddfb7c", "fetched_at": "2026-08-29T08:06:52.933374+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/getting-started.html"}, {"content_hash": "c0f9a7e88db862a7e3165ce35ee36e892f0c2577505ae45f4a7a16947958509f", "fetched_at": "2026-08-29T08:06:52.937736+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/about.html"}, {"content_hash": "4480b837ab41bcd6f8cb39ae00a991f3c603aaf6f6645f6a0e996a4e20165c94", "fetched_at": "2026-08-29T08:06:52.945615+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1019003.html"}, {"content_hash": "9204822eb141717e3539232c70168f8ef275c2e8207e1445f3ce6d691694c432", "fetched_at": "2026-08-29T08:06:52.935389+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/faq.html"}, {"content_hash": "20513910d97e5347ce9494d078f7df0b9a9c3c22d159ebe35dd1b6ce34d54a82", "fetched_at": "2026-08-29T08:06:52.939753+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1025003.html"}, {"content_hash": "8f7bbc444208de7f013990313928d1ac078e4c901fe01a764a765ec49066778b", "fetched_at": "2026-08-29T08:06:52.941745+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1002007.html"}, {"content_hash": "a64cea6dcec32ae1c603a6865f0c5fca69be2eb604401772840dead1995acc10", "fetched_at": "2026-08-29T08:06:52.943765+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1000010.html"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:11:05.308909+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:11:05.308909+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T17:12:52.583733+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0c1411130336000089acd312d51d419efa708245f79076a08fc835eb5016b17f", "fetched_at": "2026-08-28T04:11:05.308909+00:00", "kind": "readme", "missing": false, "url": "https://github.com/openresty/openresty"}, {"content_hash": "55695d6c692b5ca7ca45b3998044ecfa823be9a9884c9d82afd5a038cbf41ee8", "fetched_at": "2026-08-29T08:06:52.928267+00:00", "kind": "homepage", "missing": false, "url": "https://openresty.org"}, {"content_hash": "510390367cea2c254571b69223a796ff8e6b5ee9b5187a825a3e8fe4effa42bd", "fetched_at": "2026-08-29T08:06:52.931174+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/installation.html"}, {"content_hash": "9707fde2337fca976a61db7a1df479e8a4d797bafb61a6734f4a3feb23ddfb7c", "fetched_at": "2026-08-29T08:06:52.933374+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/getting-started.html"}, {"content_hash": "c0f9a7e88db862a7e3165ce35ee36e892f0c2577505ae45f4a7a16947958509f", "fetched_at": "2026-08-29T08:06:52.937736+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/about.html"}, {"content_hash": "4480b837ab41bcd6f8cb39ae00a991f3c603aaf6f6645f6a0e996a4e20165c94", "fetched_at": "2026-08-29T08:06:52.945615+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1019003.html"}, {"content_hash": "9204822eb141717e3539232c70168f8ef275c2e8207e1445f3ce6d691694c432", "fetched_at": "2026-08-29T08:06:52.935389+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/faq.html"}, {"content_hash": "20513910d97e5347ce9494d078f7df0b9a9c3c22d159ebe35dd1b6ce34d54a82", "fetched_at": "2026-08-29T08:06:52.939753+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1025003.html"}, {"content_hash": "8f7bbc444208de7f013990313928d1ac078e4c901fe01a764a765ec49066778b", "fetched_at": "2026-08-29T08:06:52.941745+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1002007.html"}, {"content_hash": "a64cea6dcec32ae1c603a6865f0c5fca69be2eb604401772840dead1995acc10", "fetched_at": "2026-08-29T08:06:52.943765+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1000010.html"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T17:12:52.583733+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0c1411130336000089acd312d51d419efa708245f79076a08fc835eb5016b17f", "fetched_at": "2026-08-28T04:11:05.308909+00:00", "kind": "readme", "missing": false, "url": "https://github.com/openresty/openresty"}, {"content_hash": "55695d6c692b5ca7ca45b3998044ecfa823be9a9884c9d82afd5a038cbf41ee8", "fetched_at": "2026-08-29T08:06:52.928267+00:00", "kind": "homepage", "missing": false, "url": "https://openresty.org"}, {"content_hash": "510390367cea2c254571b69223a796ff8e6b5ee9b5187a825a3e8fe4effa42bd", "fetched_at": "2026-08-29T08:06:52.931174+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/installation.html"}, {"content_hash": "9707fde2337fca976a61db7a1df479e8a4d797bafb61a6734f4a3feb23ddfb7c", "fetched_at": "2026-08-29T08:06:52.933374+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/getting-started.html"}, {"content_hash": "c0f9a7e88db862a7e3165ce35ee36e892f0c2577505ae45f4a7a16947958509f", "fetched_at": "2026-08-29T08:06:52.937736+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/about.html"}, {"content_hash": "4480b837ab41bcd6f8cb39ae00a991f3c603aaf6f6645f6a0e996a4e20165c94", "fetched_at": "2026-08-29T08:06:52.945615+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1019003.html"}, {"content_hash": "9204822eb141717e3539232c70168f8ef275c2e8207e1445f3ce6d691694c432", "fetched_at": "2026-08-29T08:06:52.935389+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/faq.html"}, {"content_hash": "20513910d97e5347ce9494d078f7df0b9a9c3c22d159ebe35dd1b6ce34d54a82", "fetched_at": "2026-08-29T08:06:52.939753+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1025003.html"}, {"content_hash": "8f7bbc444208de7f013990313928d1ac078e4c901fe01a764a765ec49066778b", "fetched_at": "2026-08-29T08:06:52.941745+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1002007.html"}, {"content_hash": "a64cea6dcec32ae1c603a6865f0c5fca69be2eb604401772840dead1995acc10", "fetched_at": "2026-08-29T08:06:52.943765+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1000010.html"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T17:12:52.583733+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0c1411130336000089acd312d51d419efa708245f79076a08fc835eb5016b17f", "fetched_at": "2026-08-28T04:11:05.308909+00:00", "kind": "readme", "missing": false, "url": "https://github.com/openresty/openresty"}, {"content_hash": "55695d6c692b5ca7ca45b3998044ecfa823be9a9884c9d82afd5a038cbf41ee8", "fetched_at": "2026-08-29T08:06:52.928267+00:00", "kind": "homepage", "missing": false, "url": "https://openresty.org"}, {"content_hash": "510390367cea2c254571b69223a796ff8e6b5ee9b5187a825a3e8fe4effa42bd", "fetched_at": "2026-08-29T08:06:52.931174+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/installation.html"}, {"content_hash": "9707fde2337fca976a61db7a1df479e8a4d797bafb61a6734f4a3feb23ddfb7c", "fetched_at": "2026-08-29T08:06:52.933374+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/getting-started.html"}, {"content_hash": "c0f9a7e88db862a7e3165ce35ee36e892f0c2577505ae45f4a7a16947958509f", "fetched_at": "2026-08-29T08:06:52.937736+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/about.html"}, {"content_hash": "4480b837ab41bcd6f8cb39ae00a991f3c603aaf6f6645f6a0e996a4e20165c94", "fetched_at": "2026-08-29T08:06:52.945615+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1019003.html"}, {"content_hash": "9204822eb141717e3539232c70168f8ef275c2e8207e1445f3ce6d691694c432", "fetched_at": "2026-08-29T08:06:52.935389+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/faq.html"}, {"content_hash": "20513910d97e5347ce9494d078f7df0b9a9c3c22d159ebe35dd1b6ce34d54a82", "fetched_at": "2026-08-29T08:06:52.939753+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1025003.html"}, {"content_hash": "8f7bbc444208de7f013990313928d1ac078e4c901fe01a764a765ec49066778b", "fetched_at": "2026-08-29T08:06:52.941745+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1002007.html"}, {"content_hash": "a64cea6dcec32ae1c603a6865f0c5fca69be2eb604401772840dead1995acc10", "fetched_at": "2026-08-29T08:06:52.943765+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1000010.html"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T17:12:52.583733+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0c1411130336000089acd312d51d419efa708245f79076a08fc835eb5016b17f", "fetched_at": "2026-08-28T04:11:05.308909+00:00", "kind": "readme", "missing": false, "url": "https://github.com/openresty/openresty"}, {"content_hash": "55695d6c692b5ca7ca45b3998044ecfa823be9a9884c9d82afd5a038cbf41ee8", "fetched_at": "2026-08-29T08:06:52.928267+00:00", "kind": "homepage", "missing": false, "url": "https://openresty.org"}, {"content_hash": "510390367cea2c254571b69223a796ff8e6b5ee9b5187a825a3e8fe4effa42bd", "fetched_at": "2026-08-29T08:06:52.931174+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/installation.html"}, {"content_hash": "9707fde2337fca976a61db7a1df479e8a4d797bafb61a6734f4a3feb23ddfb7c", "fetched_at": "2026-08-29T08:06:52.933374+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/getting-started.html"}, {"content_hash": "c0f9a7e88db862a7e3165ce35ee36e892f0c2577505ae45f4a7a16947958509f", "fetched_at": "2026-08-29T08:06:52.937736+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/about.html"}, {"content_hash": "4480b837ab41bcd6f8cb39ae00a991f3c603aaf6f6645f6a0e996a4e20165c94", "fetched_at": "2026-08-29T08:06:52.945615+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1019003.html"}, {"content_hash": "9204822eb141717e3539232c70168f8ef275c2e8207e1445f3ce6d691694c432", "fetched_at": "2026-08-29T08:06:52.935389+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/faq.html"}, {"content_hash": "20513910d97e5347ce9494d078f7df0b9a9c3c22d159ebe35dd1b6ce34d54a82", "fetched_at": "2026-08-29T08:06:52.939753+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1025003.html"}, {"content_hash": "8f7bbc444208de7f013990313928d1ac078e4c901fe01a764a765ec49066778b", "fetched_at": "2026-08-29T08:06:52.941745+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1002007.html"}, {"content_hash": "a64cea6dcec32ae1c603a6865f0c5fca69be2eb604401772840dead1995acc10", "fetched_at": "2026-08-29T08:06:52.943765+00:00", "kind": "site_page", "missing": false, "url": "https://openresty.org/en/changelog-1000010.html"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 51}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 6069, "days_push": 9, "days_rel": 329, "gap_med": 0, "n_releases_24m": 2}, "score": 82, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}