KrakenD logo

KrakenD

Stateless open source API gateway for microservices, with declarative config and linear scaling

Repository activity
  • Stars2.6k
  • Forks497
  • Open Issues34
License

Apache-2.0

Languages
  • Go
  • Makefile
  • Shell
KrakenD screenshot

About KrakenD

KrakenD is an open source API gateway written in Go for building and securing microservice APIs. It is stateless, easy to operate, and built to scale out linearly with no single point of failure. The freely available Community Edition is the open source distribution.

It aggregates, composes, filters, and transforms responses from backend services, including XML-to-JSON conversion and back. On top of that it adds throttling, multi-layer rate limiting, concurrent calls, SSL and HTTP/2, and security controls such as CORS, OAuth, JWT, HSTS, and XSS protection. Configuration is declarative and GitOps-friendly.

KrakenD is platform-agnostic, running cloud-native or self-hosted on-premises, and ships in several formats including an official Docker image. Behavior can be extended with Go plugins, Lua scripts, Martian, and Google CEL.

Key features

  • Stateless API gateway with no central persistence
  • Content aggregation, composition, filtering, and transformation
  • Throttling and multi-layer rate limiting
  • Security controls including OAuth, JWT, and CORS
  • Extensible with Go plugins, Lua, Martian, and Google CEL

Details

First released
2017
Written in
Go
Deployment
self-hostable · docker
Architecture
Stateless
Config
Declarative · GitOps
Security
SSL · HTTP/2 · OAuth · JWT