krakend/krakend-ce
krakend/krakend-ce has 2,703 GitHub stars and 505 forks. GitHot measured +2 in 7 days. Last checked 2026-11-09 22:18 UTC. Last push 2026-10-30.
KrakenD Community Edition: High-performance, stateless, declarative, API Gateway written in Go.
What you can do
- Content aggregation, composition, and filtering: Create views and mashups of aggregated content from your APIs.
- Content Manipulation and format transformation: Change responses, convert transparently from XML to JSON, and vice-versa.
- Security: Zero-trust policy, CORS, OAuth, JWT, HSTS, clickjacking protection, HPKP, MIME-Sniffing prevention, XSS protection...
- Concurrent calls: Serve content faster than consuming backends directly.
Measured star growth
- in 24h
- Update delayed
- in 7 days
- +2
- in 15 days
- Update delayed
- in 1 month
- Update delayed
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
README.md
Original
KrakenD
KrakenD is an extensible, ultra-high performance API Gateway that helps you effortlessly adopt microservices and secure communications. KrakenD is easy to operate and run and scales out without a single point of failure.
KrakenD Community Edition (or KrakenD-CE) is the open-source distribution of the KrakenD API Gateway.
KrakenD Site | Documentation | Blog | Twitter | Downloads
Benefits
- Easy integration of an ultra-high performance gateway.
- Effortlessly transition to microservices and Backend For Frontend implementations.
- True linear scalability: Thanks to its stateless design, every KrakenD node can operate independently in the cluster without any coordination or centralized persistence.
- Low operational cost: +70K reqs/s on a single instance of regular size. Super low memory consumption with high traffic (usually under 50MB w/ +1000 concurrent). Fewer machines. Smaller machines. Lower budget.
- Platform-agnostic. Whether you work in a Cloud-native environment (e.g., Kubernetes) or self-hosted on-premises.
- No vendor lock-in: Reuse the best existing open-source and proprietary tools rather than having everything in the gateway (telemetry, identity providers, etc.)
- API Lifecycle: Using GitOps and declarative configuration.
- Decouple clients from existing services. Create new APIs without changing your existing API contracts.
Technical features
- Content aggregation, composition, and filtering: Create views and mashups of aggregated content from your APIs.
- Content Manipulation and format transformation: Change responses, convert transparently from XML to JSON, and vice-versa.
- Security: Zero-trust policy, CORS, OAuth, JWT, HSTS, clickjacking protection, HPKP, MIME-Sniffing prevention, XSS protection...
- Concurrent calls: Serve content faster than consuming backends directly.
- SSL and HTTP2 ready
- Throttling: Limits of usage in the router and proxy layers
- Multi-layer rate-limiting for the end-user and between KrakenD and your services, including bursting, load balancing, and circuit breaker.
- Telemetry and dashboards of all sorts: Datadog, Zipkin, Jaeger, Prometheus, Grafana...
- Extensible with Lua scripts, Martian, or Google CEL spec.
See the website for more information.
Download
KrakenD is packaged and distributed in several formats. You don't need to clone this repo to use KrakenD unless you want to tweak and build the binary yourself.
Run
In its simplest form with the offical Docker image:
docker run -it -p "8080:8080" krakend
Now see http://localhost:8080/__health. The gateway is listening. Now CTRL-C and replace /etc/krakend/krakend.json with your first configuration.
Build
See the required Go version in the Makefile, and then:
make build
Or, if you don't have or don't want to install go, you can build it using the golang docker container:
make build_on_docker
Forking and maintaining older versions
KrakenD CE is open source under the Apache 2.0 license. You are free to fork this repository, patch it, and build and distribute your own binaries.
Security fixes are released for the 3.x line and are not backported to 2.13, so the recommended path is to upgrade to the latest version. If your setup relies on Go plugins, read why the Community Edition dropped plugin support and the options available to replace them:
- Compile your extensions in: register your middleware or handlers directly in the source code and build your own binary. There is no version drift to worry about, and you can debug it with standard Go tools.
- Lua scripting: many plugin use cases can be expressed as Lua scripts, which need no compilation.
- KrakenD Enterprise: still supports plugins, with toolchain support from the KrakenD team. See the Enterprise Edition.
If you need more time before upgrading, you can keep a 2.x build up to date on your own:
- Fork this repository and create a branch from the last 2.x tag (
git checkout -b release-2.13 v2.13.11). - Apply the fixes you need, usually by bumping the affected dependencies in
go.mod, and updateGOLANG_VERSIONin theMakefilewhen a Go release fixes a vulnerability. - Build with
make build(ormake build_on_docker) and runmake test.
The GitHub Actions in this repository publish to KrakenD's own Docker Hub and package signing accounts. In a fork, adapt the image names, secrets and GPG key to your own, or build locally with the Makefile.
License
Explore related projects
codecrafters-io/build-your-own-x
Master programming by recreating your favorite technologies from scratch.
561,720 starspublic-apis/public-apis
A collective list of free APIs
498,137 starsmorluto/rea
Reverse engineer anything with agents, from app behavior down to native binaries.
451,422 starsopenclaw/openclaw
The AI that really does things. Any OS. Any Platform. The lobster way. 🦞
394,327 stars