IntersectMBO/plutus

The Plutus language implementation and tools

1,634

stars

10,380

commits

Haskell

primary language

Sep 11, 2026

updated

blockchain
programming-language
smart-contracts

README

Introduction

Plutus Core is the scripting language embedded in the Cardano ledger and forms the basis of the Plutus Platform, an application development platform for developing distributed applications using the Cardano blockchain.

For more information about the projects, see the [user-documentation].

This repository contains:

  • The implementation, specification, and mechanized metatheory of Plutus Core

  • Plutus Tx, the compiler from Haskell to Plutus Core.

For people who want to use the project, please consult the [user-documentation].

Development

How to develop and contribute to the project

Run nix develop to enter the development shell and you will be presented with a list of available commands.

*Please see CONTRIBUTING for comprehensive documentation on how to contribute to the project, including development and submitting changes

How to submit an issue

Issues can be filed in the GitHub Issue tracker.

How to depend on the project from another Haskell project

The plutus libraries are published via CHaP. See the information there for how to use CHaP. After setting it up you should just be able to depend on the plutus packages as normal and cabal will find them.

Documentation

User documentation

The main documentation is located here.

The haddock documentation is located here.

The documentation for the metatheory can be found here.

Talks

Specifications and design

Academic papers

Licensing

You are free to copy, modify, and distribute this software under the terms of the Apache 2.0 license.

See the LICENSE and NOTICE files for details.

Contributors

(top 30 of 157)

michaelpj

2,428 commits

jmchapman

1,085 commits

j-mueller

650 commits

krisajenkins

564 commits

IntersectMBO/plutus

The Plutus language implementation and tools

1,634

stars

10,380

commits

Haskell

primary language

Sep 11, 2026

updated

blockchain
programming-language
smart-contracts

README

Introduction

Plutus Core is the scripting language embedded in the Cardano ledger and forms the basis of the Plutus Platform, an application development platform for developing distributed applications using the Cardano blockchain.

For more information about the projects, see the [user-documentation].

This repository contains:

  • The implementation, specification, and mechanized metatheory of Plutus Core

  • Plutus Tx, the compiler from Haskell to Plutus Core.

For people who want to use the project, please consult the [user-documentation].

Development

How to develop and contribute to the project

Run nix develop to enter the development shell and you will be presented with a list of available commands.

*Please see CONTRIBUTING for comprehensive documentation on how to contribute to the project, including development and submitting changes

How to submit an issue

Issues can be filed in the GitHub Issue tracker.

How to depend on the project from another Haskell project

The plutus libraries are published via CHaP. See the information there for how to use CHaP. After setting it up you should just be able to depend on the plutus packages as normal and cabal will find them.

Documentation

User documentation

The main documentation is located here.

The haddock documentation is located here.

The documentation for the metatheory can be found here.

Talks

Specifications and design

Academic papers

Licensing

You are free to copy, modify, and distribute this software under the terms of the Apache 2.0 license.

See the LICENSE and NOTICE files for details.

Contributors

(top 30 of 157)

michaelpj

2,428 commits

jmchapman

1,085 commits

j-mueller

650 commits

krisajenkins

564 commits

Languages

Haskell

87.3%

Untyped Plutus Core

12.0%