The Kalix JVM SDKs are used to develop Kalix services using Java or Scala. Two different development approaches are available as listed below:
- Java SDK (code-first)
- Java Protobuf SDK (protocol-first)
- Scala Protobuf SDK (protocol-first)
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.
- 
User-facing packages - 
kalix-java-sdk-protobufandkalix-scala-sdk-protobuf: The Java/Scala Protobuf API to build services in Kalix. See Java/Scala Protobuf SDK.
- 
kalix-java-sdk-testkitandkalix-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-orscala-protobuf-. The code provides snippets for the documentation.
- 
Developer tooling - codegen/core,- codegen/java-gen,- codegen/scala-genTooling to generate code from Protobuf with annotations.
- maven-javaMaven tooling- kalix-maven-pluginMaven plugin to trigger code generation.
- kalix-maven-archetype-event-sourced-entityMaven archetype to create a project with an Event-sourced Entity.
- kalix-maven-archetype-value-entityMaven archetype to create a project with a Value Entity.
 
- sbt-pluginsbt plugin for code generation.
- sbt new(gitter8) templates:
 
- 
docsThe documentation feeding into Java SDK and Java/Scala Protobuf SDK.
- 
tckThe 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.
Please note that your use of this project and any data collected through it is governed by our Privacy Policy.