1 of 45

Building in Polkadot

Time to get started…

2 of 45

Development Targets in Polkadot

Web

Contract

Runtime

Mobile

Core

Desktop

3 of 45

TypeScript Libraries

Mobile

Web

Desktop

Web

You can obviously use the same libraries to develop on many different targets.

Categorization is just for structure

4 of 45

Getting Started

These should help you…

Libraries

Tutorials

Docs / Examples

Ideas

1

2

3

4

5 of 45

Libraries

What to expect from various….

SCALE

Hashing

Metadata

Read Storage

Cryptography

Message Signing

Submit Transactions

Light Client Support*

Able to encode and decode arbitrary objects and bytes.

Libraries are your gateway to interacting with blockchains built with the Polkadot SDK.

All the hash functions expected by Polkadot SDK, like Blake2 and xxHash.

Ability to parse on-chain metadata and generate types and APIs exposed by the blockchain.

Able to navigate and read storage items on a blockchain.

Handle all the crypto used by Polkadot SDK, like ed25519, etc…

Sign messages on behalf of a Polkadot SDK account.

Handle the basics of creating and submitting a valid extrinsic to a Polkadot SDK blockchain.

While not all libraries support light clients out of the box, the best ones do, and allow you to access Polkadot SDK chains without trust.

6 of 45

Web Development

7 of 45

Web Development Libraries

https://github.com/polkadot-api

JavaScript, TypeScript

Polkadot API (PAPI)

subxt

https://github.com/polkadot-js

JavaScript, TypeScript

Polkadot-JS API (Legacy)

8 of 45

Polkadot API

Resources for…

Tutorials

Documentation

Examples

NOTE: Not to be confused with “Polkadot JS”, which is a legacy JS/TS API.��Polkadot JS works, but PAPI will offer more modern APIs.

9 of 45

PAPI

55 line example for…

10 of 45

PAPI

Starting tutorial for…

11 of 45

SubXT

Resources for…

Tutorials

Documentation

Examples

12 of 45

SubXT

GitHub Pages example for…

13 of 45

SubXT

CLI and Automation with…

14 of 45

Mobile Development

15 of 45

Android

Resources for…

IOS

16 of 45

17 of 45

Desktop Development

18 of 45

Desktop Development Libraries

Polkadot Unity SDK

Substrate .NET API

Python Substrate Interface

and all the libraries before work too :)

19 of 45

Polkadot Unity SDK

Resources for…

Examples

More Information

20 of 45

Python

Tutorials

Documentation

Examples

Resources for…

21 of 45

Contract Development

22 of 45

Contract Development Languages

Solidity

ink!

Move

23 of 45

Solidity

Resources for…

Tutorials

Documentation

Examples

24 of 45

ink!

Resources for…

Tutorials

Documentation

Examples

25 of 45

Runtime Development

26 of 45

FRAME

Resources for…

Tutorials

Documentation

Examples

27 of 45

28 of 45

Stateless Verifiable Applications

29 of 45

Stateless

Verifiable

  • Does not maintain / persist its own storage “on-chain”.
  • To read data, you must look through the block history.
  • Usually by re-syncing the chain and archiving that data.
  • Rules of the application must be well defined.
  • Anyone can re-sync the data from the chain.
  • Anyone can execute the state transition function to get the latest state.

30 of 45

“inscriptions”

31 of 45

remark

Have you ever submitted a…

Remarks allow anyone to “inscribe” data onto Polkadot.

32 of 45

remark

_with

_event

I suggest you use…

Emitting an event allows you to embed this call into anything and recognize it.

33 of 45

http://www.milliondollarhomepage.com/

34 of 45

one million remarks

5 years ago I created…

35 of 45

the

1337

riddle

One year ago, it was rediscovered…

36 of 45

one

million remarks

v2.0

We are relaunching!

37 of 45

Stateless Verifiable Application Formula

Define your protocol / application / game / STF.

Front-End Application with your preferred library.

Indexer of chain history and all state transitions.

Centralized deployment of indexer with public RPCs.

38 of 45

More Ideas!

39 of 45

https://www.buildondot.com/

40 of 45

https://www.morekudos.com/

41 of 45

https://github.com/paritytech/polkadot-sdk/issues/3900

42 of 45

https://github.com/paritytech/polkadot-sdk/issues/3901

43 of 45

https://github.com/polkadot-developers/bounties

44 of 45

https://sub0.gg/challenges

45 of 45

Questions / Ideas?

Find the presentation here.