Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added links for latest Marlowe development documentation. #872

Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
57 changes: 57 additions & 0 deletions docs/smart-contracts/marlowe.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,63 @@ The design guarantees the following:
The Marlowe Playground is a plug-and-play smart contract builder and simulator that is simple to use, visual, and modular. Build, simulate, and analyze Marlowe contracts in this 4-minute tour of the Marlowe Playground.
<iframe width="100%" height="325" src="https://www.youtube.com/embed/axP-jYQ_6lo" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture fullscreen"></iframe>

## Resources for Developing and Deploying Marlowe Contracts
- How do I run my Marlowe contract on the Cardano blockchain?
1. Design your contract using [Marlowe Playground](https://play.marlowe-finance.io/#/).
2. Press the `Send to Simulator` button and then press `Download as JSON` to download your contract in JSON format.
3. *If you want to run your contract at the command line using `marlowe-cli`,* install [`marlowe-cli`](https://github.com/input-output-hk/marlowe-cardano/blob/main/marlowe-cli/ReadMe.md#installation) and follow the instructions [in the tutorial for running contracts with `marlowe-cli`](https://github.com/input-output-hk/marlowe-cardano/blob/main/marlowe-cli/lectures/04-marlowe-cli-concrete.md). [Here](https://www.youtube.com/playlist?list=PLNEK_Ejlx3x0GbvCw-61e9VfRafBT1JSw) is a video lecture that provides an overview of `marlowe-cli`.
rphair marked this conversation as resolved.
Show resolved Hide resolved
4. *If you want to run your contract in a Jupyter notebook,* then use git to clone [github.com/input-output-hk/marlowe-cardano](https://github.com/input-output-hk/marlowe-cardano), run `nix develop --command jupyter-lab` from the `marlowe-cli/` folder, open the notebook [marlowe-cli/lectures/04-marlowe-cli-concrete.ipynb](https://github.com/input-output-hk/marlowe-cardano/blob/main/marlowe-cli/lectures/04-marlowe-cli-concrete.ipynb), and follow the instructions. [Here](https://www.youtube.com/watch?v=DmF7dIKmJMo&list=PLNEK_Ejlx3x0GbvCw-61e9VfRafBT1JSw&index=4) is a video lecture of running a contract from within a Jupyter notebook.
5. *If you want to run your contract from the command-line using the Marlowe Runtime backend,* then follow the [tutorial for Marlowe Runtime](https://github.com/input-output-hk/marlowe-cardano/blob/main/marlowe-runtime/doc/tutorial.ipynb). [Here](https://youtu.be/WlsX9GhpKu8) is a video demonstration.
6. *If you want to run your contract using Marlowe Lambda,* follow [the example for using Marlowe Lambda from the command line](https://github.com/input-output-hk/marlowe-lambda/blob/main/examples/zcb.ipynb) or study [the example web application for Marlowe Lambda](https://github.com/input-output-hk/marlowe-lambda/tree/main/web). [Here](https://youtu.be/huXbRyrmW60) is video of a command-line example and [here](https://youtu.be/o5m_y5l_i_g) is a video of a web app example.
- Why can't I run my Marlowe contract on `mainnet`?
- Marlowe's audit is not complete, so it is not advisable to run Marlowe contracts on `mainnet`.
- However, you can alter the source code [here](https://github.com/input-output-hk/marlowe-cardano/search?q=guardMainnet) and/or [here](https://github.com/input-output-hk/marlowe-cardano/blob/3ffdbbd0b63b36e7a1277d53f07d3c4f0138dcf0/marlowe-runtime/src/Language/Marlowe/Runtime/Transaction/Server.hs#L177-L178) to enable `mainnet` if you want to run there.
- GitHub repositories
- Marlowe language and semantics: [github.com/input-output-hk/marlowe](https://github.com/input-output-hk/marlowe)
- Marlowe Improvement Proposals (MIPs): [github.com/input-output-hk/MIPs](https://github.com/input-output-hk/MIPs)
- Marlowe on Cardano: [github.com/input-output-hk/marlowe-cardano](https://github.com/input-output-hk/marlowe-cardano)
- Marlowe Playground: [github.com/input-output-hk/marlowe-playground](https://github.com/input-output-hk/marlowe-playground)
- PureScript implementation of Marlowe: [github.com/input-output-hk/purescript-marlowe](https://github.com/input-output-hk/purescript-marlowe)
- [ACTUS](https://www.actusfrf.org/) in Marlowe: [github.com/input-output-hk/marlowe-actus-labs](https://github.com/input-output-hk/marlowe-actus-labs)
- AWS Lambda service for Marlowe Runtime: [github.com/input-output-hk/marlowe-lambda](https://github.com/input-output-hk/marlowe-lambda)
- Discussions
- [Marlowe on Cardano Forum](https://forum.cardano.org/c/developers/cardano-marlowe/149)
- [\#marlowe on Cardano StackExchange](https://cardano.stackexchange.com/questions/tagged/marlowe)
- [\#ask-marlowe on Discord](https://discord.com/channels/826816523368005654/936295815926927390)
- [IOG_Marlowe on Telegram](https://t.me/IOHK_Marlowe)
- Improvements to Marlowe: [github.com/input-output-hk/MIPs/discussions](https://github.com/input-output-hk/MIPs/discussions)
- Changes to Marlowe's implementation on Cardano: [github.com/input-output-hk/marlowe-cardano/discussions](https://github.com/input-output-hk/marlowe-cardano/discussions)
- Specifications
- [Marlowe Specification, Version 3](https://github.com/input-output-hk/marlowe-cardano/blob/main/marlowe/specification/marlowe-isabelle-specification-4f9fa249fa51ec09a4f286099d5399eb4301ed49.pdf)
- [Marlowe-Cardano Specification](https://github.com/input-output-hk/marlowe-cardano/blob/main/marlowe/specification/marlowe-cardano-specification.md)
- Testing and debugging
- [The Marlowe Debugging Cookbook](https://github.com/input-output-hk/marlowe-cardano/blob/main/marlowe/debugging-cookbook.md)
- [Marlowe Test Report](https://github.com/input-output-hk/marlowe-cardano/blob/main/marlowe/test/test-report.md)
- Tools
- [Marlowe CLI](https://github.com/input-output-hk/marlowe-cardano/blob/main/marlowe-cli/ReadMe.md): a command-line interface for running Marlowe contracts on the Cardano blockchain.
- [Marlowe Runtime](https://github.com/input-output-hk/marlowe-cardano/blob/main/marlowe-runtime/doc/ReadMe.md): an application back-end for running Marlowe contracts on the Cardano blockchain.
- [Marlowe Lambda](https://github.com/input-output-hk/marlowe-lambda): an AWS Lambda client for Marlowe Runtime.
- Examples
- [Index of example Marlowe contracts and their on-chain execution](https://github.com/input-output-hk/marlowe-cardano/blob/main/marlowe/example-contracts.md)
- [Marlowe Cookbook](https://github.com/input-output-hk/marlowe-cardano/tree/main/marlowe-cli/cookbook/ReadMe.md)
- [Marlowe Runtime Tutorial](https://github.com/input-output-hk/marlowe-cardano/blob/main/marlowe-runtime/doc/tutorial.md)
- [Marlowe Runtime examples](https://github.com/input-output-hk/marlowe-cardano/tree/main/marlowe-runtime/examples/ReadMe.md)
- [Haskell examples of Marlowe contracts](https://github.com/input-output-hk/marlowe-cardano/tree/main/marlowe-contracts)
- [ACTUS contracts in Marlowe](https://github.com/input-output-hk/marlowe-cardano/tree/main/marlowe-actus)
- Videos
- [Marlowe Pioneers 1st Cohort](https://www.youtube.com/@iogacademy9189/playlists?view=50&sort=dd&shelf_id=2)
1. [Welcome](https://www.youtube.com/playlist?list=PLNEK_Ejlx3x3xkV0OQ0PjRaCtlbPhL0Eg)
2. [Using Marlowe](https://www.youtube.com/playlist?list=PLNEK_Ejlx3x1o4Hv1GC_0kxXnquikXl70)
3. [Marlowe in Depth](https://www.youtube.com/playlist?list=PLNEK_Ejlx3x0beuXQwbcy58pAIyF4kASc)
4. [Marlowe Embedded in Haskell and JavaScript](https://www.youtube.com/playlist?list=PLNEK_Ejlx3x0maFKSYpW-17FV0B0MbAoW)
5. [Marlowe and Standardization / ACTUS](https://www.youtube.com/playlist?list=PLNEK_Ejlx3x0KLofo1maCkO3AYjQKknz-)
6. [Assurance and Convenience](https://www.youtube.com/playlist?list=PLNEK_Ejlx3x3PArP4vcu4WV0Z5xV0OLhy)
7. [Marlowe CLI](https://www.youtube.com/playlist?list=PLNEK_Ejlx3x0GbvCw-61e9VfRafBT1JSw)
- [Using the Marlowe Runtime backend to execute a Marlowe contract on Cardano's preview network](https://youtu.be/WlsX9GhpKu8)
- [A Marlowe Runtime Client for AWS Lambda](https://youtu.be/huXbRyrmW60)
- [Marlowe Lambda in the Browser](https://youtu.be/o5m_y5l_i_g)
- [A Geo-Located Smart Contract Using Cardano Beam and Marlowe](https://youtu.be/DmkYen0eaV0)

## Presentations
- [Blockchain Essentials](https://www.youtube.com/watch?v=yi8-xaoTQT4)
- [Domain-specific languages](https://www.youtube.com/watch?v=T4W19TdJHMw)
Expand Down