The Kalix JVM SDKs are used to develop Kalix services using Java or Scala. Two different development approaches are available as listed below:
If you’re just looking to get started, we advise you to start with the Java SDK which is the only one supporting a code-first development approach at present. For more information see the documentation for implementing Kalix services in Java.
kalix-spring-boot-starter
: The Java API to build services in Kalix with a code-first development approach using a Spring Boot Starter. See Java SDK.kalix-spring-boot-starter-test
: A library to implement integration tests for services, based on TestContainers. Also contains library parts of unit TestKit.java-spring-
. The code also provides snippets for the documentation.maven-java
Maven toolingkalix-spring-boot-archetype
Maven archetype to create a project.User-facing packages
kalix-java-sdk-protobuf
and kalix-scala-sdk-protobuf
: The Java/Scala Protobuf API to build services in Kalix. See Java/Scala Protobuf SDK.
kalix-java-sdk-testkit
and kalix-scala-sdk-testkit
: A library to implement integration tests for services, based on TestContainers. Also contains library parts of unit TestKit.
Samples: Small example services to illustrate Kalix features are prefixed with java-protobuf-
or scala-protobuf-
. The code provides snippets for the documentation.
Developer tooling
codegen/core
, codegen/java-gen
, codegen/scala-gen
Tooling to generate code from Protobuf with annotations.maven-java
Maven tooling
kalix-maven-plugin
Maven plugin to trigger code generation.kalix-maven-archetype-event-sourced-entity
Maven archetype to create a project with an Event-sourced Entity.kalix-maven-archetype-value-entity
Maven archetype to create a project with a Value Entity.sbt-plugin
sbt plugin for code generation.sbt new
(gitter8) templates:
docs
The documentation feeding into Java SDK and Java/Scala Protobuf SDK.
tck
The Technology Compatibility Kit which ensures the Java SDK adheres to the Kalix protocol.
The Kalix JVM SDKs are Open Source and available under the Apache 2 License.