Developing with Spring (beta)

The Spring SDK provides a code-first approach to developing Kalix applications so that a developer does not need to worry about learning protobuf upfront.

This SDK offers a way to develop applications which should be familiar to someone who has worked with Spring applications by making use of annotations to assemble Kalix and its components.

When using the Kalix Spring SDK, your services are exposed using traditional Spring REST annotations and serialization is backed by the ubiquitous Jackson library.

If you’re new to Kalix and the different types of entities that exist in a Kalix app, consider reading this section before continuing.

Prerequisites

The following are required to develop services in Java:

Java

Kalix requires Java 17 or later.

Apache Maven

Kalix relies on Apache Maven new tab as build tool.

Docker

Kalix requires Docker new tab 20.10.14 for building your service images. Most popular build tools have plugins that assist in building Docker images.

Features

As the Spring SDK is more recent than their gRPC-first counterparts, not all features are supported at this time. However, there’s already a lot to play with:

Getting Started

You can start a new Kalix project using our Getting started guide. If you prefer to first explore a fully implemented Kalix application, you can try our Quickstart application.