Skip to content

Overview

Nylon is a lightweight, high-performance, and extensible proxy server built on top of the robust Cloudflare Pingora framework. Designed for modern infrastructure.

  • Extensible: Write plugins in Go, Rust, Zig, C, and more. Extend routing, filtering, and business logic without patching the core.
  • Modern Configuration: Manage everything with a single, declarative YAML file. GitOps-friendly.
  • Advanced Routing & Load Balancing: Route by host, header, path (wildcard support), and balance traffic with round robin, random, or consistent hashing.
  • Automatic TLS Management: ACME (Let’s Encrypt, Buypass, etc.) and custom certs supported.
  • Cloud-Native: Designed for scale, reliability, and observability.

🚀 See real-world plugins:
Nylon Go Plugin Examples →


Add or customize functionality without forking or patching Nylon core — just write a plugin!

// Go Example: Minimal Middleware Plugin
//export sdk_go_mid_request_filter
func sdk_go_mid_request_filter(ptr *C.uchar, input_len C.int) C.FfiOutput {
dispatcher := InputToDispatcher(ptr, input_len)
ctx := dispatcher.SwitchDataToHttpContext()
ctx.Request.SetHeader("x-nylon-middleware", "true")
dispatcher.SetHttpEnd(false)
dispatcher.SetData(ctx.ToBytes())
return SendResponse(dispatcher)
}
  • Language-agnostic plugins: Go, Rust, Zig, C, and more
  • Zero vendor lock-in
  • Fastest possible bridge: All plugin calls use FlatBuffers over native FFI

👉 Want to build your own? Read the Plugin System


Nylon is built on top of Cloudflare Pingora, a battle-tested proxy engine designed for performance, reliability, and security at global scale. Nylon leverages Pingora’s ultra-efficient core to handle connection pooling, IO, and low-level protocol work—but adds a powerful plugin system and flexible routing engine to make advanced customization possible for everyone.

Core Request Flow:

  • Every client request first enters the Pingora core, which provides efficient networking and connection management.
  • Nylon’s request lifecycle then takes over, processing each request through a chain of routing, plugin filters, and dynamic service logic—all configurable and extensible via plugins written in your language of choice.
  • At each stage, you can hook in custom logic (plugins), modify requests or responses, and control routing or service behavior without touching the core.

The diagram below illustrates a typical request lifecycle in Nylon:




Nylon is open source and built for modern infra teams & cloud-native developers.
Give it a star on GitHub!