Get Started
This guide covers the prerequisites and the basic project wiring for building on Canton with OpenZeppelin's Daml packages.
These packages target the Canton 3.4.x baseline and are under active
development. Pin exact versions from the package manifests in
OpenZeppelin/canton-contracts
rather than copying version numbers from this page.
Prerequisites
- JDK 21: the Daml toolchain runs on Java. Install a recent OpenJDK 21 build and make sure
JAVA_HOMEpoints at it. - DPM (Daml Package Manager): Digital Asset's package manager and SDK installer. Install it from Digital Asset's public installer, then use it to provision the Daml SDK / Canton baseline.
- A Daml project: a directory with a
daml.yaml(single package) or amulti-package.yaml(workspace of packages).
Add OpenZeppelin packages
OpenZeppelin's Canton library is distributed as Daml packages. Add the packages you need as dependencies of your Daml project, then build:
# from your project root, with DPM on PATH
dpm build --allRefer to each component's page for the module path to import and the templates and interfaces it exposes:
Explore further
- The Settlement (CIP-112) primitive shows how to compose the library into an atomic, value-moving settlement flow.
- The Reference Implementations walk through complete application blueprints built on these pieces.