Canton Network quickstart installation
Introduction
The Quickstart application helps you and your team become familiar with CN application development by providing essential scaffolding. The Quickstart application provides a launchpad and is intended to be extended to meet your business needs. When you are familiar with the Quickstart, review the technology choices and application design to determine what changes are needed. Technology and design decisions are ultimately up to you.Overview
This guide walks through the installation andLocalNet deployment of the CN Quickstart. We have provided a fast path installation and step-by-step instructions, based on level of experience, for your convenience. Please contact your representative at Canton Network if you find errors.
Roadmap
- After installation, explore the demo to complete a business operation in the example application.
- For an overview of how the Quickstart project is structured, read the project structure guide.
- Learn about debugging using lnav in the Debugging and troubleshooting with lnav.
- Additional debugging information is in the section in the observability and troubleshooting section of the cn-quickstart repository.
Prerequisites
Access to the CN-Quickstart GitHub repository is public. The CN Quickstart is a Dockerized application and requires Docker Desktop. We recommend allocating 8 GB of memory to Docker Desktop. Allocate additional resources if you witness unhealthy containers, if possible. Decline Observability if your machine does not have sufficient memory. Other requirements include:Nix download support
Check for Nix on your machine:Nix (Nix) 2.25.2, you’re done.
Recommended installation for MacOS:
Fast path installation
If you are familiar with the prerequisites, use these abbreviated installation instructions. More detailed instructions are provided in the step-by-step instructions below. Clone the repository, provision the toolchain, and build the application. These steps run in order, in a single terminal:exit and close Daml Shell with quit.
Step-by-step instructions
Clone from GitHub
Clone and cd into thecn-quickstart repository into your local machine.

Docker
Verify that the Docker Desktop application is running on your computer. Login to Docker repositories via the terminal.Change to the quickstart directory
The development toolchain, including the Daml tooling, JDK, and Node.js, is provisioned automatically by Nix when you rundirenv allow in the repository root.
cd into the quickstart subdirectory.
The
Makefile providing project choreography is in the quickstart/ directory. make only operates within quickstart/.If you see errors related to make, double check your present working directory.Deploy a validator on LocalNet
Configure the local development environment by runningmake setup.
Disable Observability. Enable OAuth2. Leave the party hint blank to use the default and disable TEST MODE.
The party hint is used as a party node’s alias of their identification hash. The Party Hint is not part of the user’s identity. It is a convenience feature. It is possible to have multiple party nodes with the same hint.
make setup again.
OAuth2 and Observability may be unstable if your machine has less than 8 GB of memory to allocate to Docker Desktop.

quickstart subdirectory.
Connecting to the Local Canton Nodes
In a separate shell, from thequickstart subdirectory, run the Canton Console.


Closing the application
⚠️ (If you plan on immediately using the CN Quickstart then delay execution of this section)Close Canton console
When complete, open the Canton console terminal. Runexit to stop and remove the console container.
Close Daml shell
In the Daml shell terminal, executequit to stop the shell container.
Close the CN Quickstart
Finally, close the application and observability services with:clean-all during development and at the end of each session to avoid conflict errors on subsequent application builds.
Next steps
You have successfully installed the CN Quickstart. The next section, “Exploring The Demo,” provides a demonstration of the example application.Connecting your application to The Canton Network
TheLocalNet deployment connects to a local validator which is in turn connected to a local super-validator (synchronizer). Staging and final production deployments require connecting to a validator that is in turn connected to the public Canton Network.
The Canton Network provides three synchronizer pools. The production network is MainNet; the production staging network is TestNet. As a developer you will mostly be connecting to the development staging network DevNet.
Access to a SV Node that is whitelisted on the CN is required to connect to DevNet. The CF publishes a list of SV nodes who have the ability to sponsor a Validator node. To access DevNet, contact your sponsoring SV agent for VPN connection information.