# OpenResty

High Performance Web Platform Based on Nginx and LuaJIT

Repository: https://github.com/openresty/openresty
Canonical: https://ross.abutalabs.com/products/openresty
Homepage: https://openresty.org
Language: C
License: NOASSERTION
License Family: other
Last push: 2026-08-24T10:25:41+00:00
Link (homepage): https://openresty.org
Link (site_page): https://openresty.org/en/installation.html
Link (site_page): https://openresty.org/en/getting-started.html
Link (site_page): https://openresty.org/en/faq.html
Link (site_page): https://openresty.org/en/about.html

## Health v2 (maintenance only)
Score: 82/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 99, release rhythm 51, longevity 100
- inputs: {"age_days": 6069, "days_push": 9, "days_rel": 329, "gap_med": 0, "n_releases_24m": 2}
- flags: no_license
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 14012, forks 1633 (observed 2026-08-28T04:11:05.308909+00:00)

## 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.

## 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

## 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

## 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

## Facets
- artifact type: framework
- maturity: stable
- function: web-framework, http-server, api-gateway, middleware, proxy, caching, routing
- domain: web-development, backend, apis, developer-tools, performance, self-hosted
- platform: windows, cross-platform, self-hosted
- tags: nginx, luajit, lua, web-server, api-gateway, reverse-proxy, high-concurrency, scriptable-server, linux, macos, docker

## Member repositories
- openresty/openresty (main) score 82
- openresty/lua-nginx-module (backend) score 77
- openresty/lua-resty-redis (sdk) score 67
- openresty/headers-more-nginx-module (plugin) score 77
- openresty/luajit2 (backend) score 70
- openresty/openresty.org (docs) score 77
- openresty/echo-nginx-module (plugin) score 77
- openresty/docker-openresty (infra) score 64

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:11:05.308909+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T17:12:52.583733+00:00, confidence not recorded.
  - readme: https://github.com/openresty/openresty (fetched 2026-08-28T04:11:05.308909+00:00, sha 0c1411130336)
  - homepage: https://openresty.org (fetched 2026-08-29T08:06:52.928267+00:00, sha 55695d6c692b)
  - site_page: https://openresty.org/en/installation.html (fetched 2026-08-29T08:06:52.931174+00:00, sha 510390367cea)
  - site_page: https://openresty.org/en/getting-started.html (fetched 2026-08-29T08:06:52.933374+00:00, sha 9707fde2337f)
  - site_page: https://openresty.org/en/about.html (fetched 2026-08-29T08:06:52.937736+00:00, sha c0f9a7e88db8)
  - site_page: https://openresty.org/en/changelog-1019003.html (fetched 2026-08-29T08:06:52.945615+00:00, sha 4480b837ab41)
  - site_page: https://openresty.org/en/faq.html (fetched 2026-08-29T08:06:52.935389+00:00, sha 9204822eb141)
  - site_page: https://openresty.org/en/changelog-1025003.html (fetched 2026-08-29T08:06:52.939753+00:00, sha 20513910d97e)
  - site_page: https://openresty.org/en/changelog-1002007.html (fetched 2026-08-29T08:06:52.941745+00:00, sha 8f7bbc444208)
  - site_page: https://openresty.org/en/changelog-1000010.html (fetched 2026-08-29T08:06:52.943765+00:00, sha a64cea6dcec3)
- Data as of 2026-08-30T08:39:29.467469+00:00.
