Interactive Learning Tutorials

Pre-configured instances, accessible from your browser without any downloads or configuration. Use it to experiment, learn Daml and see how we can help solve real-world problems.

Tutorials are available on desktop devices only. If you would like to run an interactive learning tutorial please access this page from a desktop device

Get Started with Daml

The interactive tutorials in this section cover the fundamental concepts in Daml. By completing the tutorials you will get a good understanding of the build process, writing and testing smart-contracts in Daml, as well as what makes a good design pattern


1. Get started with Daml

This tutorial gets you up and running with full-stack Daml development. We do this through the example of a simple social networking application. The tutorial covers:

  1. How to build and run the application (this tutorial)
  2. How to write a new feature for the app
  3. How to deploy your app to Daml Hub
2. Fundamental Concepts

This tutorial  provides an overview of key concepts and terms used in Daml: 

  1. Basic data types such as functions, records, enumerations etc.
  2. How to import modules 
  3. Essential data containers like lists, sets and maps available via Daml's stabdard loirary
  4. How the keywords 'signatory', 'observer' and 'controller' are used 
  5. How you can keep your API and your model simple by using contract keys.
3. Daml Scripts

Test your Daml models with scripts and interact with any Daml ledger from the command line.

4. Daml Design Patterns

Patterns have been useful in the programming world, as both a source of design inspiration, and a document of good design practices. This tutorial showcases some of Daml patterns intended to provide the same facility in the Daml application world.