-
- Welcome.
- The (E)UTxO-model.
- Building the example code.
- An auction contract in the EUTxO-model.
- A brief look at the auction code.
- Running an example auction contract on a local Playground.
- Homework.
- Lecture #1: English Auction
-
Week #1
- Clone the The Plutus repository, check out the correct commit as specified in cabal.project.
- Set-up IOHK binary caches How to set up the IOHK binary caches. "If you do not do this, you will end up building GHC, which takes several hours. If you find yourself building GHC, STOP and fix the cache."
- Enter a
nix-shell. - Build the English Auction contract with
cabal build(you may need to runcabal updatefirst). - Go to the
plutus-playground-clientfolder. - Start the Playground server with
plutus-playground-server. - Start the Playground client (in another
nix-shell) withnpm run start. - Copy-paste the auction contract into the Playground editor.
- Compile.
- Simulate various auction scenarios.
Language.Marlowe.Semantics, contains Marlowe types and semantics.Plutus.Contract.StateMachine, contains types and functions for using state machines.Plutus.Contract.Test, provides various ways to write tests for Plutus contracts.Plutus.Contract.Test.ContractModel, support for property based testing of Plutus contracts.Plutus.Contracts.Uniswap, an implementation of Uniswap in Plutus.Plutus.PAB.Webserver.API, contains the HTTP-interface provided by the PAB.Plutus.Trace.Emulator, contains types and functions related to traces.Plutus.V1.Ledger.Ada, contains support for the Ada currency.Plutus.V1.Ledger.Contexts, contains the definition of the context-related types.Plutus.V1.Ledger.Interval, contains the definition of and helper functions for theIntervaltype.Plutus.V1.Ledger.Slot, contains the definition of theSlottype.Plutus.V1.Ledger.Value, contains the definition of and helper functions for theValuetype.PlutusTx.Data, contains the definition of theDatatype.PlutusTx.IsData.Class, defines theIsDataclass.