General-grants-program: Build simple Substrate runtime modules with a tutorial

Created on 8 Jan 2019  ·  14Comments  ·  Source: w3f/General-Grants-Program

We need more tutorials that help developers get acquainted to building for Polkadot. In this bounty we desire the creation of a tutorial that leads fellow community members through the necessary steps of creating a Substrate runtime module.

Example project 1:
Create a simple module that hashes a piece of data and stores it on chain (please include a timestamp). The module must be also be able to check the hash and timestamp.

This task should include a simple UI plus a tutorial.

Example project 2:
Taking inspiration from Gavin Wood’s talk at W3S, we would like a tutorial that teaches the community how to build a simple game that uses a Substrate runtime module.

This task should include a simple UI (e.g. in a web browser) and include a tutorial.

Example project 3:
Take inspiration from the above example projects and come up with your own Substrate runtime modules.

It is likely that you will have to create a simple UI, plus you need to write an accompanying tutorial.

Requirements

When undertaking the work for this bounty, be advised that a correct submission will:

  • Be open source. This work will be shared widely with the community.
  • Have a step-by-step tutorial that explains how to write the module. The tutorial will explain the reasoning as to why the module is designed as it is.
  • The module must function as requested and contain no compiler errors.

Bounty

This issue now has a funding of 900.0 DAI (900.0 USD @ $1.0/DAI) attached to it as part of the Web 3 Foundation fund.

Just as an FYI for all bounty hunters: the total pot of funds is 900 Dai, but we are looking for 3 submissions. That means that each individual submission is eligible for 300 Dai.

Keep this in mind while applying! Thanks and good luck!

Bounty

Most helpful comment

Hi! I just completed a module for a Bonded Token, also known as Bonding Curve Token or Bonded Fungible Token taking inspiration from this EIP for a smart contract.

What I did for this is to implement the runtime module for an ERC20 token that can be bought and sold continuously for a price which is a function of the total supply. Code is available here. So far I've written a tutorial walking through the Rust code portions and still needs some editing and a better home for publishing it besides my random GitHub repo :sweat_smile:

I'm wondering if this would qualify for the bounty?

All 14 comments

Issue Status: 1. Open 2. Started 3. Submitted 4. Done


__This issue now has a funding of 900.0 DAI (900.0 USD @ $1.0/DAI) attached to it as part of the Web 3 Foundation fund.__

Issue Status: 1. Open 2. Started 3. Submitted 4. Done


__Work has been started__.

These users each claimed they can complete the work by 2 months, 3 weeks from now.
Please review their action plans below:

1) alogishetty has been approved to start work.

I don't have much experience with polkadot but I am willing to learn and complete this bounty.

Learn more on the Gitcoin Issue Details page.

2) srisankethu has been approved to start work.

I am interested on working on this!

Learn more on the Gitcoin Issue Details page.

3) aj07 has been approved to start work.

I would like to work on this. I have already seen live of Gav talk and very interested on web3 framework

Learn more on the Gitcoin Issue Details page.

4) hskang9 has applied to start work _(Funders only: approve worker | reject worker)_.

I am developing the tutorial for blockchain workshop in nyc.

Learn more on the Gitcoin Issue Details page.

5) lsaether has applied to start work _(Funders only: approve worker | reject worker)_.

Hi! I'm registering for the Gitcoin bounty with the submission here https://github.com/w3f/Web3-collaboration/issues/60#issuecomment-467480694

Learn more on the Gitcoin Issue Details page.

6) montanaflynn has applied to start work _(Funders only: approve worker | reject worker)_.

Look into substrate and create runtime modules, tutorial and documentation.

Learn more on the Gitcoin Issue Details page.

7) prastut has applied to start work _(Funders only: approve worker | reject worker)_.

  1. Tic tac toe on Subtrate. 2 players bet some ETH before starting and then whoever wins get's the ETH.
  2. Sudoku on Substrate.

Bonus Idea:
I came across Polkadot when I came with the idea of having a Zapier for Blockchain.

Learn more on the Gitcoin Issue Details page.

This issue now has a funding of 900.0 DAI (900.0 USD @ $1.0/DAI) attached to it as part of the Web 3 Foundation fund.

Just as an FYI for all bounty hunters: the total pot of funds is 900 Dai, but we are looking for 3 submissions. That means that each individual submission is eligible for 300 Dai.

Keep this in mind while applying! Thanks and good luck!

@EdwardAThomson Is this issue still open? I want to work on this. I don't know much about Substrate run time modules or polkadot, but I think I can figure it out. I think I can write the tutorial better as I will also be trying to figure out how to create the module myself, and the tutorial is targeted for the first timers like me.

Tell me if it is available to work on. Also should the three example projects listed needs to be created or any one of them is fine?

@EdwardAThomson Is this issue still open? I want to work on this. I don't know much about Substrate run time modules or polkadot, but I think I can figure it out. I think I can write the tutorial better as I will also be trying to figure out how to create the module myself, and the tutorial is targeted for the first timers like me.

Tell me if it is available to work on. Also should the three example projects listed needs to be created or any one of them is fine?

Hey @pbteja1998 this bounty is definitely still open! Thanks for reaching out and good luck with your submission.

@EdwardAThomson
Where can I contact you if I need any clarifications, is there some slack or gitter channel that I can join?

Also Should I make tutorials for all the three example projects listed or just any one of them?

@EdwardAThomson
Where can I contact you if I need any clarifications, is there some slack or gitter channel that I can join?

Also Should I make tutorials for all the three example projects listed or just any one of them?

Any one of them is fine. We just wanted to provide some example ideas.

I recently joined the Gitcoin Slack but I barely visit. We do prefer to use Riot at W3F. I can also ping you an email, I see the address in your profile.

Polkadot Riot channel: https://riot.im/app/#/room/#polkadot-watercooler:matrix.org
My Riot handle: @edwardt:matrix.org

@EdwardAThomson thanks. I just joined the riot channel.

This is awesome!

I'm currently exploring building web2/web3 data bridges to enable on-chain voting mechanisms. If I got this to work on Substrate, explained how to replicate it, and created a way for people to get involved to improve the architectures/protocols would that count for the bounty?

Also, does the Polkadot testnet pool security/validator actors yet, because that might change design decisions?

Thanks :)

This is awesome!

Thanks! @burrrata :-) I'm appreciating the enthusiasm.

I'm currently exploring building web2/web3 data bridges to enable on-chain voting mechanisms. If I got this to work on Substrate, explained how to replicate it, and created a way for people to get involved to improve the architectures/protocols would that count for the bounty?

If I understood correctly, yes.

_Almost_ any tutorial that shows people how to build a module on Substrate is acceptable!

Also, does the Polkadot testnet pool security/validator actors yet, because that might change design decisions?

In theory yes, but there has been a few hiccups getting our new hybrid consensus mechanism working. This has slowed down the deployment of test parachains, although we did see a couple on the previous test net.

Hi! I just completed a module for a Bonded Token, also known as Bonding Curve Token or Bonded Fungible Token taking inspiration from this EIP for a smart contract.

What I did for this is to implement the runtime module for an ERC20 token that can be bought and sold continuously for a price which is a function of the total supply. Code is available here. So far I've written a tutorial walking through the Rust code portions and still needs some editing and a better home for publishing it besides my random GitHub repo :sweat_smile:

I'm wondering if this would qualify for the bounty?

implement the runtime module for an ERC20....

Hey @lsaether , thanks for showing interest. That sounds like an impressive effort, so this would be eligible for a bounty!

I'd like to have someone check over it before awarding any funding. We would check that the code works and that the tutorial is clear enough. I've asked someone on our side to take a look and verify it for me. :-)

For high quality tutorials, I believe it should be possible to get them hosted on the Substrate hub site. I don't have any editorial input there, so I'd need someone from Parity to inform us.

⚡️ A tip worth 300.00000 DAI (300.0 USD @ $1.0/DAI) has been granted to @lsaether for this issue from @. ⚡️

Nice work @lsaether! Your tip has automatically been deposited in the ETH address we have on file.

Issue Status: 1. Open 2. Started 3. Submitted 4. Done


__This Bounty has been completed.__

Additional Tips for this Bounty:

  • tipped 300.0000 DAI worth 300.0 USD to lsaether.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

ghuun picture ghuun  ·  7Comments

bobjiang picture bobjiang  ·  5Comments

Web3Foundation picture Web3Foundation  ·  32Comments

EdwardAThomson picture EdwardAThomson  ·  6Comments

dfishb picture dfishb  ·  6Comments