Examples show how you can customize/extend Knot.x Stack in a real project. They use Gradle to build all custom modules and prepare a distribution containing custom configurations and modules.
Within this module, you will see what Stack is and how it can be customized. It also contains details on how to use Starter Kit template project to prepare a custom project distribution.
Although we recommend to start with Starter Kit that builds Docker image, using Docker is not mandatory.
Topic | Description | Used technologies | Tutorial | Source code |
---|---|---|---|---|
Stack | Basic usage of fragmentsHandler with a simple graph that uses data from external API and combines them with a static HTML provided by fsRepoConnectionHandler. | Stack | Getting Started with Knot.x Stack | ./distribution/getting-started |
Docker | This module covers the same topics as above. However, it uses Docker and embeds Knot.x Stack within a Docker image. | Stack, Docker, Starter Kit template project | Getting Started with Docker | ./distribution/getting-started |
Knot.x is an integration framework that can be used as a simple API gateway. It can be also combined with Cloud solutions like Apigee Edge or Amazon API Gateway.
Topic | Description | Used technologies | Tutorial | Source code |
---|---|---|---|---|
OpenAPI and API Console with Swagger | More advanced example of OpenAPI specification usage | OpenAPI, SwaggerUI | OpenAPI specification & interactive API Console | ./api-gateway/api-console |
Securing your API | Simple usage of popular authentication technologies to secure your API. | Docker, OAuth 2.0, OpenId Connect, JWT | coming soon | coming soon |
Caching | Knot.x proxies requests to target API, providing a caching capability. | In-memory cache, Fragments, WireMock, Docker | Caching API responses | .api-gateway/caching |
API composition | Presents how to compose data from many services / APIs using Configurable Integrations. | Fragments, WireMock, Docker | Compose multiple services into a single round-trip. | ./api-gateway/api-composition |
GraphQL API | Expose GraphQL API using Configurable Integrations. | GraphQL, OpenAPI, Configurable Integrations | Using GraphQL with Knot.x | ./api-gateway/graphql-api |
This module presents the aspects of template processing.
Topic | Description | Used technologies | Tutorial | Source code |
---|---|---|---|---|
Getting started | Basic usage of fragmentsHandler with a simple graph that uses data from external API and combines them with a static HTML provided by fsRepoConnectionHandler | Template Engine, Handlebars, Docker | ./template-processing/handlebars |
This module presents the usage of [Fragments Chrome Plugin](https://github.com/Knotx/knotx-fragments-chrome-extension.
Topic | Description | Used technologies | Tutorial | Source code |
---|---|---|---|---|
Template processing scenario | Basic usage of Knot.x Fragments Chrome Plugin during Task & Actions definition & external API responses investigation. | Knot.x Fragments Chrome Plugin, Fragments Handler, Template Engine, Docker | ./chrome-extension |