Hi all,
Canton .NET SDK 0.7.0 is out: a stable, open-source (Apache-2.0) SDK for building on Canton in C#. All packages are on nuget.org. If you build in C#, the 20-minute demo is the fastest way to see what it does.
0.7.0 targets Canton 3.6, Splice 0.9.1, Daml SDK 3.6.0 and .NET 10. Every release passes end-to-end tests against an up-to-date LocalNet. If your participant is still on Canton 3.5, stay on 0.6.x.
What it lets you do
- Generate typed C# from any DAR.
dpm codegen-csemits records for templates and data types, typed choices, andTry…Asyncmethods to create contracts and exercise choices. Ready-madeSplice.*(Token Standard) and Daml Finance packages are on NuGet. - Talk to the ledger through one client.
ICantonLedgerClientsubmits and streams over gRPC or the JSON Ledger API. - Query PQS in C#. Queries are typed predicates that translate to SQL.
- Trace every call with OpenTelemetry, over either API or to PQS.
- Unit-test without a ledger. In-memory test doubles ship in the
Canton.Ledger.Testingpackage.
See it in action
- One demo run as a single trace across gRPC, the JSON Ledger API and PQS
- A typed C# predicate and the Postgres it becomes
- Canton LocalNet in your own CI, a GitHub Action to test your app against a real ledger, in any language, not only .NET, and release with peace of mind
Or run it yourself with the mini-demo. The demo takes a Token Standard V2 transfer from Daml source to a local Canton ledger with one dotnet run, over gRPC and the JSON Ledger API, and reads it back from PQS. Setup and run take about 20 minutes once .NET, a JDK and Docker are installed.
Feedback
Share your run in the feedback thread, and anything you’d improve. Bugs go to issues. The 0.7.0 announcement has the details and upgrade notes.
If you’re integrating the SDK into an existing system or building something new with it, we’re happy to help. Ask here, tell us what you’re building, or email info@peaceful.studio.
Peaceful Studio
