The Plutarch guide is your one-stop shop for getting up to speed on Plutarch!

Note: If you spot any mistakes/have any related questions that this guide lacks the answer to, please don't hesitate to raise an issue. The goal is to have high quality documentation for Plutarch users!

Aside: Not interested in the details? Skip straight to examples!

Overview

Haddock

Haddock documentation of plutus-core, plutus-ledger-api, plutus-tx, and few other upstream library with correctly matched version to latest Plutarch is available:

Go to Haddock

Compiling and Running

Introduction and Basic Syntax

The Introduction section serves as a introduction to Plutarch's basic concepts and core syntactic constructs. It will help build a mental model of Plutarch, but is insufficient to write production-ready code.

Practical Usage

The Usage section fills in the gaps left by the previous. It illustrates techniques that make Plutarch easier to work with.

Concepts

The Concepts section details additional concepts.

Typeclasses

The Typeclasses section discusses the primary typeclasses related to Plutarch.

Working with Types

The Types section discusses the core types of Plutarch.

Examples

Rules of thumb, Tips, and Tricks

Outside of the fundamental user guide, there are rules of thumb and general guidelines you can follow to improve your Plutarch experience. The Tricks section discusses ways of writing efficient and high quality Plutarch code, as well as rules that can help auditing Plutarch easier.

Common Issues and Troubleshooting

Due to the highly abstracted nature of Plutarch and its utilization of advanced type level concepts, you might face unfamiliar errors. Don't worry, the guide is here to help!

Useful Links