funded
plu-ts - 0 to full Cardano dApp tutorial/documentation
Current Project Status
In Progress
Amount
Received
₳32,000
Amount
Requested
₳56,068
Percentage
Received
57.07%
Solution

We propose a series of videos to be uploaded on youtube explaining the technical concept of it assuming no background experience in blockchain (though targets are developers)

Problem

There is a lack of documentation and practical examples for new developers

Impact / Alignment
Feasibility
Value for money

Team

3 members

plu-ts - 0 to full Cardano dApp tutorial/documentation

Please describe your proposed solution.

We are planning to produce an in-depth course with a practical approach to dApp development.

The content of the course should be easy to understand and should push the viewer to actively follow the content.

How does your proposed solution address the challenge and what benefits will this bring to the Cardano ecosystem?

Catalyst Open's intentions are to cover any possible proposal that doesn't fit existing challenges.

We feel this is the best place for this kind of educational content.

How do you intend to measure the success of your project?

The outcome of the project will be published on youtube and examples will be public on github.

The success of the project can be measured both in total views the course will get and number of forks / stars of the repository containig the related projects.

Please describe your plans to share the outputs and results of your project?

As specified above; everything will be on youtube, for publishing Michele's channel will be used.

also, the most important videos will be shared using Michele's twitter account.

What is your capability to deliver your project with high levels of trust and accountability?

Michele will be responisble of creating the educational material (the videos)

John will take care of editing; making sure the content is easy to follow.

What are the main goals for the project and how will you validate if your approach is feasible?

The goal is to generate quality content to point new developers to when approaching cardano.

Please provide a detailed breakdown of your project’s milestones and each of the main tasks or activities to reach the milestone plus the expected timeline for the delivery.

We'll take each of the videos to produce as milestone, this also works as a list of deliverables for the project.

Part 1: Practical Itroduction to the UTxO model (simple tx creation)

  • What are the UTxOs, where do they live in the wallet
  • What are UTxOs used for? (first simple transaction)
  • What informations are in a UTxO? (analyzing the data)
  • Addresses, why some longer than others? (understanding credentials)
  • Are all addresses of a human? (what is the difference with script addresses)

Part 2: Scripts of any kind

  • All kinds of scripts we can use (Native, PlutusV1, PlutusV2)
  • using native scripts
  • using (simple) plutus scripts
  • where to use scripts (spending, minting, etc..)

Part 3: Plutus Scripts interface

  • why we extended the UTxO model?
  • Datums, Redeemers, Context, and where they come from
  • Data, the thing that we are really using
  • A script based on the Datum
  • A script based on the Redeemer
  • A script based on the Context

Part 4: Plutus deep dive

  • Type of values we can use and how to create them
  • creating new types (structs and aliases)
  • It's all functions (control flow)
  • Builtin functions in plutus
  • Creating a new function
  • Testing (running) the on-chain code
  • using a private testnet

Part 5: (Project) Auction contract

  • project idea (structure of the project)
  • setting up the project
  • contract implementaion
  • deploying the contracts on private testnet
  • listing something for auction
  • place an offer
  • close a contract or sell for the highest bid

Part 6: Common Patterns

  • difference between Spending contracts and all the others.
  • parametrized contracts
  • one shot minting policy
  • thread spending validator (state machine pattern)
  • creating transactions to interact with a state machine contract
  • multiple contracts in a single transaction (double satisfaction attack)
  • proxy contracts ( multiple contracts with clear dependencies)
  • mutually dependent contracts

Part 7: (Project) NFT vending machine

  • project idea (structure of the project)
  • setting up the project
  • the minting policy
  • the vending machine
  • deploying the contracts
  • minting NFTs

Please describe the deliverables, outputs and intended outcomes of each milestone.

each of the videos listed above can be considered deliverables.

Please provide a detailed budget breakdown of the proposed work and resources.

The total amount required for the project is estimated to be 56068 ADA.

It has been calculated as follows.

Each of the videos will require approximately 4 hours of work for editing and another 4 hours of work for the recording and review process, for a total of 8 hours of work each.

40 $/h after taxes is the amount agreed upon between the proposers;

Taking into consideration a 22% standard tax due to VAT (see source on agenzia delle entrate)

40 · (100 / (100 - 22)) =

40 · 100 / 78 =

4000 / 78 ~= 51,282 $/h

so the estimated total cost of the project in dollar value is calculated using the hourly cost, times the estimated 8 hours per video, times 41 scheduled videos:

51,282 · 8 · 41 = 16,820.496 $

for simplicity we'll assume a conversion rate of 0,3 $/ADA; or equivalently 3,3333 ADA/$ (10/3)

so we convert the estimated dollar cost to ADA:

16,820.496 · 10 / 3 = 56,068.32 ADA

Who is in the project team and what are their roles?

Michele; maintainer of plu-ts (a typescript framework for Cardano smart contracts and transaction creation) will take care of the creation of the contents;

John will take care of editing and ensuring the quality of the final product.

How does the cost of the project represent value for money for the Cardano ecosystem?

The educational content will help new developers get started with Cardano, without any other web3 prerequisite and with very little knowledge of programming languages in general.

close

Playlist

  • EP2: epoch_length

    Authored by: Darlington Kofa

    3m 24s
    Darlington Kofa
  • EP1: 'd' parameter

    Authored by: Darlington Kofa

    4m 3s
    Darlington Kofa
  • EP3: key_deposit

    Authored by: Darlington Kofa

    3m 48s
    Darlington Kofa
  • EP4: epoch_no

    Authored by: Darlington Kofa

    2m 16s
    Darlington Kofa
  • EP5: max_block_size

    Authored by: Darlington Kofa

    3m 14s
    Darlington Kofa
  • EP6: pool_deposit

    Authored by: Darlington Kofa

    3m 19s
    Darlington Kofa
  • EP7: max_tx_size

    Authored by: Darlington Kofa

    4m 59s
    Darlington Kofa
0:00
/
~0:00