KrakenD Playground
The KrakenD Playground is a demonstration environment that puts together the necessary pieces to get you started with the KrakenD API Gateway, using real-world example use cases.This is a demo environment designed for learning and testing. It is not intended for production use.
What’s Included
As KrakenD is an API gateway, this playground includes a complete ecosystem of surrounding services:- Internal and third-party services that feed the gateway
- Authentication/authorization examples including:
- JWT token-based authentication with Keycloak integration
- JWT token revoker
- API-Key-based authentication
- Basic authentication
- Observability integrations with:
- Grafana + InfluxDB for metrics
- ELK stack (Elasticsearch, Logstash, Kibana) for log storing and visualization
- Jaeger for distributed tracing
- Async agent integration with RabbitMQ
Quick Links
Quickstart
Get the playground running in minutes
Architecture
Understand how the services work together
Key Features
Explore what you can do with the playground
Included Services
All services run in Docker containers and are accessible via localhost:| Service | Port | Description |
|---|---|---|
| KrakenD Gateway | 8080 | The main API Gateway (Community Edition) |
| Fake API | 8000 | Simple backend providing raw data (XML, JSON, RSS) |
| Grafana | 4000 | Metrics visualization (credentials: admin/admin) |
| Kibana | 5601 | Log visualization and analysis |
| Jaeger | 16686 | Distributed tracing UI |
| Web Client | 3000 | Sample SPA demonstrating authentication flows |
| JWT Revoker | 9000 | Token revocation service |
| Keycloak | 8085 | Identity Provider (credentials: admin/admin) |
| RabbitMQ | 15672 | Message queue management UI (credentials: guest/guest) |
| InfluxDB | 8086 | Time-series database for metrics |
Example Endpoints
Once running, you can explore various API Gateway features through pre-configured endpoints:- Simple requests - Basic gateway functionality
- Data aggregation - Combine multiple backend calls into one response
- GraphQL to REST - Transform GraphQL queries into REST endpoints
- Caching - Backend response caching
- Sequential calls - Chain requests with data from previous calls
- JWT authentication - Protected endpoints with token validation
- Concurrent requests - Parallel backend calls for faster responses
Configuration
The KrakenD configuration is located atconfig/krakend/krakend.json and includes descriptive comments for each endpoint. When you modify this file, changes are applied automatically.
You can edit the configuration visually using the KrakenD Designer by dragging and dropping the config file.
The playground includes examples of flexible configuration, demonstrating how to use templates, variables, and logic in your KrakenD setup.