Skip to content

Commit

Permalink
Create 02-plutus-resources.mdx
Browse files Browse the repository at this point in the history
  • Loading branch information
olgahryniuk committed Sep 30, 2022
1 parent 01c9327 commit d35a43c
Showing 1 changed file with 122 additions and 0 deletions.
122 changes: 122 additions & 0 deletions content/09-plutus/02-plutus-resources.mdx
@@ -0,0 +1,122 @@
---
title: Plutus resources
metaTitle: Plutus resources
---

This section aims to provide a simple way for users to find links to information and essential resources related to Plutus. This includes Plutus repositories, talks, documentation, community resources, training materials, example projects, and references to the Plutus Pioneer Program.

## Plutus developer resources

The scope of the Plutus developer resources section includes such topics:

- Plutus Core
- Plutus Tools
- Official Haskell language server implementation
- Cardano node API documentation

### Plutus Core

Plutus Core is the scripting language embedded in the Cardano ledger. It forms the basis of the Plutus Platform – an application development platform for developing decentralized applications (DApps) on the Cardano blockchain.

**Developer resources**:

- [Plutus Core GitHub repository](https://github.com/input-output-hk/plutus): includes the implementation, specification, and mechanized metatheory of Plutus Core as well as Plutus Tx – the compiler from Haskell to Plutus Core.

**Associated links**:

- [Talks](https://github.com/input-output-hk/plutus#talks)
- [Specifications and design](https://github.com/input-output-hk/plutus#specifications-and-design)
- [Academic papers](https://github.com/input-output-hk/plutus#academic-papers)

### Plutus Tools

Plutus Tools is a collection of off-chain infrastructure resources built for external developers. The Plutus Tools SDK repository supports the necessary underlying resources for writing applications using Plutus in Haskell.

Plutus Tools also provide libraries for working with the Plutus Application Framework (PAF) – the off-chain part of the Plutus Platform that enables DApp development and interaction with smart contracts.

**Developer resources**:

- [Plutus Tools GitHub repository](https://github.com/input-output-hk/plutus-apps): includes libraries that implement the PAF, a selection of end-to-end use cases written with the PAF, and details about Plutus Playground.

**Associated links**:

- [Talks](https://github.com/input-output-hk/plutus-apps#talks)
- [Specifications and design](https://github.com/input-output-hk/plutus-apps#specifications-and-design)

### Official Haskell language server implementation

Haskell language server implementation is an implementation of a server for the Language Server Protocol (LSP). A language server talks to a client, who can ask the server to perform various operations, such as reporting errors or providing code completions.

**Developer resources**:

- [Haskell language server documentation](https://haskell-language-server.readthedocs.io/en/latest/index.html)

### Cardano node API documentation

**Developer resources**:

- [Cardano node API documentation](https://input-output-hk.github.io/cardano-node/): the Haddock-generated documentation for the Cardano node API.

## Plutus user documentation

This section includes references to Plutus user documentation such as explanations, tutorials, how-to guides, etc.

**Documentation**:

- [Plutus Core and Plutus Tx User Guide](https://plutus.readthedocs.io/en/latest/): introduces the Plutus Core programming language and programming with Plutus Tx. Documentation includes explanations, tutorials, how-to instructions, troubleshooting, and reference information:
- [explanations](https://plutus.readthedocs.io/en/latest/explanations/index.html)
- [tutorials](https://plutus.readthedocs.io/en/latest/tutorials/index.html)
- [how-to guides](https://plutus.readthedocs.io/en/latest/howtos/index.html)
- [troubleshooting](https://plutus.readthedocs.io/en/latest/troubleshooting.html)
- [reference](https://plutus.readthedocs.io/en/latest/reference/index.html)

- [Plutus Tools SDK user guide](https://plutus-apps.readthedocs.io/en/latest/): this user guide is intended for developers who are authoring DApps by using smart contracts on the Cardano blockchain:
- [explanations](https://plutus-apps.readthedocs.io/en/latest/plutus/explanations/index.html)
- [tutorials](https://plutus-apps.readthedocs.io/en/latest/plutus/tutorials/index.html)
- [how-to guides](https://plutus-apps.readthedocs.io/en/latest/plutus/howtos/index.html)
- [troubleshooting](https://plutus-apps.readthedocs.io/en/latest/plutus/troubleshooting.html)
- [architectural decision records](https://plutus-apps.readthedocs.io/en/latest/adr/index.html)
- [reference](https://plutus-apps.readthedocs.io/en/latest/reference/index.html)
- [Haddock generated documentation](https://playground.plutus.iohkdev.io/doc/haddock/)

- [Video presentation on the Plutus Platform](https://www.youtube.com/watch?v=usMPt8KpBeI&feature=youtu.be): in this session from the 2020 Cardano Summit, Michael Peyton-Jones walks us through working with Plutus, while Jann Müller then takes us through the Plutus Application Platform, where assets can be built and launched. He also demonstrates how tokens can be transferred using a smart contract.


## Plutus community resources

This section provides links to Plutus community resources.

If you are a community member engaged with Plutus development, please raise a pull request to add more relevant links and information.

- [Cardano forum for Plutus discussions](https://forum.cardano.org/c/developers/cardano-plutus/148)
- [Plutus community docs](https://www.essentialcardano.io/article/plutus-community-docs-a-new-documentation-site-for-devs-by-devs)

## Plutus Pioneer Program

- [Plutus Pioneer Program](https://github.com/input-output-hk/plutus-pioneer-program#readme): includes lectures, examples, and exercises

- **Plutus Pioneer community notes**:
- [How to prepare for the Plutus Pioneer Program](https://www.essentialcardano.io/article/how-to-prepare-for-the-plutus-pioneer-program)
- [Essential Resources and Documentation for the Plutus Pioneer Program](https://www.essentialcardano.io/article/essential-resources-and-documentation-for-the-plutus-pioneer-program)
- [Plutus Pioneer Program Part 1: Understanding the eUTXO Model and Coding the first Smart Contract](https://www.essentialcardano.io/article/plutus-pioneer-program-part-1-understanding-the-eutxo-model-and-coding-the-first-smart-contract)
- [Plutus Pioneer Program - Part 2: How to “deploy” a Smart Contract in Cardano](https://www.essentialcardano.io/article/plutus-pioneer-program-part-2-how-to-deploy-a-smart-contract-in-cardano)
- [Plutus Pioneer Program - Part 3: How to Mint and Burn Tokens and NFTs in Cardano](https://www.essentialcardano.io/article/plutus-pioneer-program-part-3-how-to-mint-and-burn-tokens-and-nfts-in-cardano)
- [Plutus Pioneer Program - Part 4: State Machine with Plutus (1/2)](https://www.essentialcardano.io/article/plutus-pioneer-program-part-4-state-machine-with-plutus-12)
- [Plutus Pioneer Program - Part 5: State Machine with Plutus (2/2)](https://www.essentialcardano.io/article/plutus-pioneer-program-part-5-state-machine-with-plutus-22)

## Blog posts about Plutus on iohk.io

Please note that the blog posts are presented starting with the most recent ones:

- [Simple property-based tests for Plutus validators](https://iohk.io/en/blog/posts/2022/01/27/simple-property-based-tests-for-plutus-validators/)
- [Plutus fee estimator: find out the cost of transacting on Cardano](https://iohk.io/en/blog/posts/2022/01/21/plutus-fee-estimator-find-out-the-cost-of-transacting-on-cardano/)
- [Slow and steady wins the race: network evolution for network growth](https://iohk.io/en/blog/posts/2021/11/22/slow-and-steady-wins-the-race-network-evolution-for-network-growth/)
- [Architecting DApps on the EUTXO ledger](https://iohk.io/en/blog/posts/2021/11/16/architecting-dapps-on-the-eutxo-ledger/)
- [Plutus Application Backend (PAB): supporting DApp development on Cardano](https://iohk.io/en/blog/posts/2021/10/28/plutus-application-backend-pab-supporting-dapp-development-on-cardano/)
- [Concurrency and all that: Cardano smart contracts and the EUTXO model](https://iohk.io/en/blog/posts/2021/09/10/concurrency-and-all-that-cardano-smart-contracts-and-the-eutxo-model/)
- [No-surprises transaction validation on Cardano](https://iohk.io/en/blog/posts/2021/09/06/no-surprises-transaction-validation-on-cardano/)
- [No-surprises transaction validation on Cardano: part 2](https://iohk.io/en/blog/posts/2021/09/07/no-surprises-transaction-validation-part-2/)
- [Strategic partners pave way for Plutus smart contracts](https://iohk.io/en/blog/posts/2021/05/12/developers-add-muscle-to-plutus-smart-contracts-on-cardano-for-defi/)
- [Plutus: what you need to know](https://iohk.io/en/blog/posts/2021/04/13/plutus-what-you-need-to-know/)
- [Everything you need to know about our new Plutus Pioneer Program](https://iohk.io/en/blog/posts/2021/04/01/everything-you-need-to-know-about-our-new-plutus-pioneer-program/)
- [Introducing the new Plutus Playground](https://iohk.io/en/blog/posts/2021/01/25/introducing-the-new-plutus-playground/)

0 comments on commit d35a43c

Please sign in to comment.