Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/input-output-hk/plutus-pioneer-program

This repository hosts the lectures of the Plutus Pioneers Program. This program is a training course that the IOG Education Team provides to recruit and train software developers in Plutus, the native smart contract language for the Cardano ecosystem.
https://github.com/input-output-hk/plutus-pioneer-program

cardano dapps plutus plutus-pioneer-program smart-contracts

Last synced: 25 days ago
JSON representation

This repository hosts the lectures of the Plutus Pioneers Program. This program is a training course that the IOG Education Team provides to recruit and train software developers in Plutus, the native smart contract language for the Cardano ecosystem.

Awesome Lists containing this project

README

        




IOG Academy on YouTube


Welcome to the Plutus Pioneers Program 4th Cohort


The Plutus Pioneer Program (PPP) is a course delivered by the IOG Education team
to recruit and train software developers in Plutus, the native smart contract
language for the Cardano ecosystem.

This repository contains the lectures, code examples, homework, and installation
guides for the new 4th cohort of this program. Smart contracts are written in the
Haskell-based Plinth language. The [aiken-fourth-iteration](https://github.com/input-output-hk/plutus-pioneer-program/tree/aiken-fourth-iteration)
branch contains the same smart contracts translated into Aiken.

This documentation looks better in GitBook at the following link:

## Lectures

### [Lecture 1](https://www.youtube.com/playlist?list=PLNEK_Ejlx3x3xFHJJKdyfo9eB0Iw-OQDd)

- [Welcome and Introduction](https://youtu.be/g4fBo4QPir0)
- [Setting up Our Development Environment](https://youtu.be/-cmIqKCzzOU)
- [Kuber Marketplace Demo](https://youtu.be/ZaB-7ZYBi3g)
- [Hashing & Digital Signatures](https://youtu.be/f-WKPWbk9Jg)
- [The EUTxO-Model](https://youtu.be/ulYDNaEKf4g)
- [Homework](https://youtu.be/Ey903I-R1KY)

### [Lecture 2](https://www.youtube.com/playlist?list=PLNEK_Ejlx3x1-oF7NDy0MhXxG7k5O6ZOA)

- [Low-Level, Untyped Validation Scripts](https://youtu.be/3tcWCZV6L_w)
- [Using the Cardano CLI to Interact with Plutus](https://youtu.be/2MbzKzoBiak)
- [High-Level, Typed Validation Scripts](https://youtu.be/GT8OjOzsOb4)
- [Summary](https://youtu.be/F5ewN65Mn4I)
- [Homework](https://youtu.be/OR2IfD4oDjw)

### [Lecture 3](https://www.youtube.com/playlist?list=PLNEK_Ejlx3x2zXSjHRKLSc5Jn9vJFA3_O)

- [Script Contexts](https://youtu.be/dcoYrIyEI4o)
- [Handling Time](https://youtu.be/LPzwMqOnWvk)
- [A Vesting Example](https://youtu.be/5D0O7q9UPJA)
- [Parameterized Contracts](https://youtu.be/ZSKVu32c5eA)
- [Offchain Code with Lucid](https://youtu.be/C8TuGSzhqXU)
- [Reference Scripts](https://youtu.be/Rnyc5YXVXew)
- [Homework](https://youtu.be/hdt4XqFeEyg)
- [Summary](https://youtu.be/gxan_u2pStE)

### [Lecture 4](https://www.youtube.com/playlist?list=PLNEK_Ejlx3x2j587Ox_nwEzmCO-elk8BG)

- [On-chain VS Off-chain](https://youtu.be/pTc_BJby5GU)
- [Off-chain Code with Cardano CLI and GUI](https://youtu.be/gsgQ-xmzbpA)
- [Off-chain Code with Kuber](https://youtu.be/fzib9ALlL2M)
- [Off-chain Code with Lucid](https://youtu.be/BXz5V2rjbiE)
- [Homework](https://youtu.be/2Qm2xgmtbk4)

### [Lecture 5](https://www.youtube.com/playlist?list=PLNEK_Ejlx3x2T1lIR4XnDILKukj3rPapi)

- [Introduction](https://youtu.be/HgXYsMFqnb4)
- [Values](https://youtu.be/ThYByMLC0EI)
- [A Simple Minting Policy](https://youtu.be/g_VoKPK-tk0)
- [A More Realistic Minting Policy](https://youtu.be/Faru8_Br2Xg)
- [NFT's](https://youtu.be/9kW-z_RuwEY)
- [Homework](https://youtu.be/nQC_GNPIRT8)

### [Lecture 6](https://www.youtube.com/playlist?list=PLNEK_Ejlx3x08fHgl_ZTlowVO8bjqITEh)

- [The State Monad in practice](https://www.youtube.com/watch?v=8tWzG0ML6Z4&list=PLNEK_Ejlx3x08fHgl_ZTlowVO8bjqITEh&index=1)
- [Introduction to the Plutus Simple Model library](https://youtu.be/Sft02LeXA_U)
- [Unit Testing a Smart Contract](https://youtu.be/vB8hyVq3HVo)
- [Property Testing a Smart Contract](https://youtu.be/pF8HpKmaQi4)
- [Testing Smart Contracts with Lucid](https://youtu.be/aUrIuDQgg5c)
- [Double Spending and Homework](https://youtu.be/AZVpkwRhEaY)

### [Lecture 7](https://www.youtube.com/playlist?list=PLNEK_Ejlx3x0wH_y1lQp4xtrkuaYSWi6V)

- [Introduction](https://youtu.be/KCWuj2DXEY4)
- [Marlowe Playground Demo](https://youtu.be/fldaBHmYfqk)
- [Homework](https://youtu.be/C4WWnQZOAAM)
- [Marlowe Starter Kit: Docker](https://youtu.be/wgSvPlWUrf8)
- [Marlowe Starter Kit: Preliminaries](https://youtu.be/hGBmj9ZrYHs)
- [Marlowe Starter Kit: ZCB using the Marlowe Runtime command-line client](https://youtu.be/pjDtuD5rimI)
- [Marlowe Starter Kit: ZCB using the Marlowe Runtime REST API](https://youtu.be/wgJVdkM2pBY)
- [Marlowe Starter Kit: ZCB using the Marlowe Runtime CLI](https://youtu.be/ELc72BKf7ec)
- [Marlowe Starter Kit: Escrow using the Marlowe Runtime's REST API](https://youtu.be/E8m-PKbS9TI)
- [Marlowe Starter Kit: Swap contract using the Marlowe Runtime's REST API](https://youtu.be/sSrVCRNoytU)

### [Lecture 8](https://www.youtube.com/playlist?list=PLNEK_Ejlx3x09VdtQTw_UpxUa0bRcrVPI)

- [Introduction](https://youtu.be/07ATzubeHjo)
- [The Private Testnet](https://youtu.be/BBqOZAuMx1c)
- [Plutus & Staking](https://youtu.be/1Hs6bU9pXi4)
- [Trying it on the Testnet](https://youtu.be/fzYXwdrfu44)
- [Homework](https://youtu.be/rO3FVGsuzUg)

### [Lecture 9](https://www.youtube.com/playlist?list=PLNEK_Ejlx3x3ZWTpR5lhoVs_DHkebiBcU)

- [Creating our own Stablecoin Dapp](https://youtu.be/KDzyMy0WN9M)
- [Using our Stablecoin UI](https://youtu.be/MVq51lZkutA)
- [Stablecoin's Oracle](https://youtu.be/XfbEsFPbzCI)
- [Deploying Stablecoin's Reference scripts](https://youtu.be/AokRj-upwlY)
- [Minting Stablecoins](https://youtu.be/mUa9sztfPKs)
- [Burning Stablecoins and Liquidating positions](https://youtu.be/u2cUeD72MrQ)
- [Testing our Stablecoin's scripts](https://youtu.be/-MBebK33FOU)
- [Homework](https://youtu.be/yfmLaLcDjtc)

### [Lecture 10](https://www.youtube.com/playlist?list=PLNEK_Ejlx3x0ivViR3g9lAkB4Qj3iejp1)

- [Introduction](https://www.youtube.com/watch?v=Vp4UGDUv8BM&list=PLNEK_Ejlx3x0ivViR3g9lAkB4Qj3iejp1&index=2)
- [Developing a Dapp with MeshJS and PluTs (Typescript)](https://www.youtube.com/watch?v=tazyJWUL0nM&list=PLNEK_Ejlx3x0ivViR3g9lAkB4Qj3iejp1&index=1)
- [Developing smart contracts with PluTs (Typescript)](https://www.youtube.com/watch?v=WN4yxa-ISyk&list=PLNEK_Ejlx3x0ivViR3g9lAkB4Qj3iejp1&index=5)
- [Developing smart contracts with OpShin and PyCardano (Python)](https://www.youtube.com/watch?v=Ale01hnxZEg&list=PLNEK_Ejlx3x0ivViR3g9lAkB4Qj3iejp1&index=3)
- [Developing smart contracts with Plutarch (Haskell)](https://www.youtube.com/watch?v=2PNTJLzcP2k&list=PLNEK_Ejlx3x0ivViR3g9lAkB4Qj3iejp1&index=4)
- [Developing smart contracts with Aiken](https://www.youtube.com/watch?v=Y6x46s60bks&list=PLNEK_Ejlx3x0ivViR3g9lAkB4Qj3iejp1&index=5)

## Repository Structure

The most relevant directories of this repository are structured as follows:

- In the [.devcontainer](.devcontainer/) directory, you'll find a Docker
contained created by the IOG Education Team to create a local development
environment for the lectures of this course.

- In the [docs](docs/) directory, you'll find the lecture notes as they appear
in GitBook.

- In the [code](code/) directory, you'll find the code for each lecture.

---

This work is licensed under a
[Creative Commons Attribution 4.0 International License](http://creativecommons.org/licenses/by/4.0/).

Creative Commons License BY 4.0