---
title: "Documentation"
language: "en"
documentation_version: "3.x"
channel: "development"
release_context: null
source_revision: "252018d861d008b380109414280f99e51433e238"
working_tree_clean: true
source_path: "docs/README.md"
source_sha256: "deb18e505b2845ebb3ec35bb04f698875bb2c1aae44e27e14a3c2a8625d5f47e"
source_at_revision: true
source_url: "https://github.com/matsumotory/ngx_mruby/blob/252018d861d008b380109414280f99e51433e238/docs/README.md"
html_url: "https://ngx.mruby.org/docs/"
markdown_url: "https://ngx.mruby.org/markdown/docs.md"
last_updated: "2026-10-29"
---

# Documentation

This is the documentation of ngx_mruby 3.x, developed on the branch
`next`. It has four kinds of page: a start page that runs ngx_mruby,
guides for tasks, the reference, and the concepts behind them.

## Documents

- Start: [Get started](/start/): run nginx with a Ruby handler in Docker, then change the script
- Guides: [Install](/guides/install/), [Route requests to a backend](/guides/routing/), [Deny clients listed in a file](/guides/access-control/), [Limit the rate per API key](/guides/rate-limit/), [Change a response body](/guides/body-filter/), [Allow TCP connections in Ruby](/guides/tcp/), [Agent proxy](/guides/agent-proxy/) (development version), and the [use cases](/guides/use-cases/)
- Reference: [Directives](/reference/directives/), [Ruby classes and methods](/reference/ruby/), [Build](/reference/build/)
- Concepts: [Request phases](/concepts/request-phases/), [Filters](/concepts/filters/), [Waiting without blocking](/concepts/async/), [Lifetimes](/concepts/lifetimes/)
- Releases: [Release notes](/releases/), which start with the behavior changes to read before upgrading, and [Migrating from ngx_mruby 2.x to 3.0.0](/releases/migration/)
- Security: [Security policy](/security/) and [Trust boundary](/security/trust-boundary/): what ngx_mruby trusts, what it treats as client input, and what a script is responsible for
- Contributing: [Contributing](/contributing/), [Testing](/contributing/test/), [Developing ngx_mruby](/contributing/development/) and the [state of the work](/contributing/handoff/)

## Branches and releases

- [Branch strategy](https://github.com/matsumotory/ngx_mruby/blob/next/README.md#branch-strategy): what `master`, `next` and `v2.x` hold, and what to pin to stay on 2.x
- [Promoting v3 to master](/contributing/development/#promoting-v3-to-master): the procedure, for maintainers

## License

ngx_mruby is under the [MIT License](https://github.com/matsumotory/ngx_mruby/blob/next/MITL).
