CurrencyL0App and CurrencyL1App.
Prerequisites
- Java 21 (enforced at build time — the SDK build will fail on any other version)
- SBT 1.x
- A Constellation Network node to connect to
Add the SDK dependency
In your metagraph project’s The You will also want to configure your build to produce a fat JAR that excludes the SDK classes:
build.sbt, declare the SDK with Provided scope:Provided scope makes all Tessellation types available at compile time without bundling them into your output JAR. The node runtime supplies the implementation.Always match the SDK version to the version of Tessellation running on the nodes that will host your metagraph. A mismatch causes class-loading errors at startup.
Implement CurrencyL0App
CurrencyL0App is the entry point for your metagraph’s Layer 0 logic. Extend it and provide a ClusterId, TessellationVersion, and MetagraphVersion.OverridableL0 trait (mixed in by CurrencyL0App) provides default no-op implementations for all extension points:Implement CurrencyL1App
CurrencyL1App is the entry point for your metagraph’s Layer 1 logic. It handles transaction consensus and optionally data application consensus.OverridableL1 trait provides defaults:Override extension points
Override the extension points you need directly in your See Extension points for the full list of overridable methods.
object:Project layout
A typical metagraph project has two SBT sub-projects:ClusterId.