Skip to main content

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

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:
ServicePortDescription
KrakenD Gateway8080The main API Gateway (Community Edition)
Fake API8000Simple backend providing raw data (XML, JSON, RSS)
Grafana4000Metrics visualization (credentials: admin/admin)
Kibana5601Log visualization and analysis
Jaeger16686Distributed tracing UI
Web Client3000Sample SPA demonstrating authentication flows
JWT Revoker9000Token revocation service
Keycloak8085Identity Provider (credentials: admin/admin)
RabbitMQ15672Message queue management UI (credentials: guest/guest)
InfluxDB8086Time-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 at config/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.

Next Steps

Ready to get started? Head over to the Quickstart guide to launch the playground in minutes.

Build docs developers (and LLMs) love