Lura
What it is
Lura is a free, stateless API Gateway framework for developers building a proxy or gateway in a Go application. It can combine backend sources behind one endpoint, grouping, wrapping, transforming, or shrinking responses so clients receive the fields they need. Lura is a Go library compiled from source, and compiling it requires Go. Its building blocks include configuration, router, and proxy packages, with helpers for encoding, logging, and service discovery. Documented middleware handles balancing, concurrent requests, request and response logging, response merging, and HTTP URL patterns. The proxy package includes an EntityFormatter for response manipulation. Lura supports HTTP(S); its documentation says adapters for other transports, including Thrift, gRPC, AMQP, and NATS, can be added. The router layer can also be extended with other HTTP routers, frameworks, or middleware, including plugins for OAuth authorization or security layers. The project identifies KrakenD Community Edition as an implementation using Lura and is hosted by The Linux Foundation. For help, the project points users to its issue tracker and a Slack channel.
For and against
For
- Free, open-source Go library.
- Combines backend sources behind one endpoint.
- Includes middleware for balancing and response merging.
- Router layer can be extended.
- Supports HTTP(S), with other adapters possible.
Against
- Requires Go to compile from source.
- Designed for inclusion in a Go application.
- Other transport protocols require added adapters.
The verdict
Lura provides building blocks for developers who want to assemble a stateless gateway or proxy in Go. It requires compiling the library from source, and support for other transports depends on adding adapters.
Who it suits
Lura suits developers building an API gateway or proxy in their own Go application. It may fit projects that need one endpoint to combine data from multiple backend services.
Plans and prices
Open source
Go library; compile from source
Read 9 Oct 2026 · github.com
On the record
- Architecture
- Its building blocks include configuration, router, and proxy packages, with helpers for encoding, logging, and service discovery.luraproject.org · read 9 Oct 2026
- Backend middleware
- Documented middleware includes balancing, concurrent requests, request and response logging, merging, and HTTP URL pattern handling.luraproject.org · read 9 Oct 2026
- Example implementation
- The documentation identifies KrakenD Community Edition as a real-world implementation that uses Lura.luraproject.org · read 9 Oct 2026
- Extensibility
- The project says its generic libraries can be extended with middleware and plugins, including for OAuth authorization or security layers.luraproject.org · read 9 Oct 2026
- Framework
- Lura is an extendable, simple, stateless high-performance API Gateway framework for cloud-native and on-premises setups.luraproject.org · read 9 Oct 2026
- Hosting
- Lura is an independent open-source project owned by the Linux Foundation since 2021.luraproject.org · read 9 Oct 2026
- Implementation
- Lura is presented as a Go library for inclusion in a Go application, and Go is required to compile it.luraproject.org · read 9 Oct 2026
- Intended users
- The project describes itself as a library for developers building an API gateway or proxy in their own Go application.luraproject.org · read 9 Oct 2026
- Library
- Lura is a Go library that can be included in a Go application to build a proxy or API gateway, and compiling it requires Go.luraproject.org · read 9 Oct 2026
- Middleware
- Documented middleware includes balancing, concurrent requests, logging, response merging, and HTTP URL pattern handling.luraproject.org · read 9 Oct 2026
- Product
- Lura is an extendable, stateless API Gateway framework for cloud-native and on-premises setups.luraproject.org · read 9 Oct 2026
- Project host
- The Lura Project website identifies the project as hosted by The Linux Foundation.luraproject.org · read 9 Oct 2026
- Protocols
- Lura supports HTTP(S), and its generic libraries can be used to build other gateways and proxies, including an RPC gateway.luraproject.org · read 9 Oct 2026
- Purpose
- It aggregates backend sources into endpoints and can group, wrap, transform, and shrink responses for clients.luraproject.org · read 9 Oct 2026
- Response processing
- The proxy package includes an EntityFormatter for response manipulation.luraproject.org · read 9 Oct 2026
- Router adapters
- The documentation describes router implementations using net/http mux and httprouter wrapped in gin, and says the router layer can be extended to use other HTTP routers, frameworks, or middleware.luraproject.org · read 9 Oct 2026
- Support
- The project prefers its GitHub issue tracker for bugs, feature requests, and questions, and lists a #lura Slack channel for communication.luraproject.org · read 9 Oct 2026
- Support and community
- The project directs users with questions, suggestions, or bugs to open an issue and also lists a Slack channel.github.com · read 9 Oct 2026