mirror of
https://github.com/pezkuwichain/pezkuwi-subxt.git
synced 2026-07-20 12:45:40 +00:00
Rename canvas to contracts (#1265)
* Update SVG * Rename `canvas-kusama` folder `contracts-rococo` * Search-Replace `canvas-kusama` with `contracts-rococo` * Search-Replace `canvas_kusama` with `contracts_rococo` * Search-Replace `canvas_rococo` with `contracts_rococo` * Rename `canvas-rococo.json` to `contracts-rococo.json` * Rename `CanvasKusamaChainSpec` to `ContractsRococoChainSpec` * Migrate chain specs and configurations to `contracts-rococo` * Adapt readme * Improve directory structure * Remove last occurrences of `canvas` * Apply `cargo fmt` * Update README.md Co-authored-by: Alexander Theißen <alex.theissen@me.com> * Fix funny indentation * Fix wasm path renaming Co-authored-by: Alexander Theißen <alex.theissen@me.com> Co-authored-by: Wilfried Kopp <wilfried@parity.io> Co-authored-by: Chevdor <chevdor@users.noreply.github.com>
This commit is contained in:
@@ -59,95 +59,9 @@ CHAIN=westmint # or statemine
|
||||
|
||||
Refer to the [setup instructions below](#local-setup) to run a local network for development.
|
||||
|
||||
## Canvas 🧑🎨
|
||||
## Contracts 📝
|
||||
|
||||
[![matrix][k1]][k2] [![discord][l1]][l2]
|
||||
|
||||
[k1]: https://img.shields.io/badge/matrix-chat-brightgreen.svg?style=flat
|
||||
[k2]: https://riot.im/app/#/room/#ink:matrix.parity.io
|
||||
[l1]: https://img.shields.io/discord/722223075629727774?style=flat-square&label=discord
|
||||
[l2]: https://discord.com/invite/wGUDt2p
|
||||
|
||||
This is a node implementation of `Canvas`, a common good parachain for `pallet-contracts`
|
||||
based wasm smart contracts. Right now this repository only contains the `canvas-kusama` runtime
|
||||
which we plan to use for both Rococo and Kusama.
|
||||
|
||||
If you have any questions, feel free to talk to us on [Element][k2] or on [Discord][l2]
|
||||
(in the [`ink_smart-contracts`](https://discord.com/channels/722223075629727774/765280480609828864) channel).
|
||||
|
||||
## Developing Smart Contracts for Canvas
|
||||
|
||||

|
||||
|
||||
This node contains Substrate's smart contracts module ‒ the
|
||||
[`contracts`](https://github.com/paritytech/substrate/tree/master/frame/contracts) pallet.
|
||||
This `contracts` pallet takes smart contracts as WebAssembly blobs and defines an API
|
||||
for everything a smart contract needs (storage access, …).
|
||||
As long as a programming language compiles to WebAssembly and there exists an implementation
|
||||
of this API in it, you can write a smart contract for this pallet ‒ and thus for Canvas ‒ in
|
||||
that language.
|
||||
|
||||
This is a list of languages you can currently choose from:
|
||||
|
||||
* [Parity's ink!](https://github.com/paritytech/ink) for Rust
|
||||
* [ask!](https://github.com/patractlabs/ask) for Assembly Script
|
||||
* The [Solang](https://github.com/hyperledger-labs/solang) compiler for Solidity
|
||||
|
||||
There are also different user interfaces and command-line tools you can use to deploy
|
||||
or interact with contracts:
|
||||
|
||||
* [polkadot-js](https://polkadot.js.org/apps/)
|
||||
* [Canvas UI](https://paritytech.github.io/canvas-ui/) (outdated)
|
||||
|
||||
If you are looking for a quickstart, we can recommend
|
||||
[ink!'s Guided Tutorial for Beginners](https://docs.substrate.io/tutorials/v3/ink-workshop/pt1/).
|
||||
|
||||
### Build & Launch a Node
|
||||
|
||||
To run a Canvas node that connects to Rococo (Kusama and Polkadot parachains are not deployed, yet)
|
||||
you will need to compile the `polkadot-parachain` binary:
|
||||
|
||||
```bash
|
||||
cargo build --release --locked -p polkadot-parachain
|
||||
```
|
||||
|
||||
Once the executable is built, launch the parachain node via:
|
||||
|
||||
```bash
|
||||
./target/release/polkadot-parachain --chain rocanvas
|
||||
```
|
||||
|
||||
Refer to the [setup instructions below](#local-setup) to run a local network for development.
|
||||
|
||||
### Rococo Deployment
|
||||
|
||||
We have a live deployment of the Canvas parachain on [Rococo](https://wiki.polkadot.network/docs/build-pdk#rococo-testnet) ‒
|
||||
a testnet for Polkadot and Kusama parachains.
|
||||
You can interact with the network through Polkadot JS Apps,
|
||||
[click here for a direct link to Canvas](https://polkadot.js.org/apps/?rpc=wss%3A%2F%2Frococo-canvas-rpc.polkadot.io#/explorer).
|
||||
|
||||
The Canvas parachain uses the Rococo relay chain's native token (ROC) instead of having its own token.
|
||||
Due to this you'll need ROC in order to deploy contracts on Canvas.
|
||||
|
||||
As a first step, you should create an account. See [here](https://wiki.polkadot.network/docs/learn-account-generation)
|
||||
for a detailed guide.
|
||||
|
||||
As a second step, you have to get ROC testnet tokens through the [Rococo Faucet](https://wiki.polkadot.network/docs/learn-DOT#getting-rococo-tokens).
|
||||
This is a chat room in which you need to write:
|
||||
|
||||
```bash
|
||||
!drip YOUR_SS_58_ADDRESS:1002
|
||||
```
|
||||
|
||||
The number `1002` is the parachain id of Canvas on Rococo, by supplying it the faucet will teleport ROC
|
||||
tokens directly to your account on the parachain.
|
||||
|
||||
If everything worked out, the teleported ROC tokens will show up under
|
||||
[the "Accounts" tab for Canvas](https://polkadot.js.org/apps/?rpc=wss%3A%2F%2Frococo-canvas-rpc.polkadot.io#/accounts).
|
||||
|
||||
Once you have ROC on Canvas you can deploy a contract as you would normally.
|
||||
If you're unsure about this, our [guided tutorial](https://docs.substrate.io/tutorials/v3/ink-workshop/pt1/)
|
||||
will clarify that for you in no time.
|
||||
See [the `contracts-rococo` readme](polkadot-parachains/contracts-rococo/README.md) for details.
|
||||
|
||||
## Rococo 👑
|
||||
|
||||
@@ -190,7 +104,7 @@ Once the executable is built, launch collators for each parachain (repeat once e
|
||||
### Parachains
|
||||
|
||||
* [Statemint](https://polkadot.js.org/apps/?rpc=wss%3A%2F%2Frococo-statemint-rpc.polkadot.io#/explorer)
|
||||
* [Canvas on Rococo](https://polkadot.js.org/apps/?rpc=wss%3A%2F%2Frococo-canvas-rpc.polkadot.io#/explorer)
|
||||
* [Contracts on Rococo](https://polkadot.js.org/apps/?rpc=wss%3A%2F%2Frococo-contracts-rpc.polkadot.io#/explorer)
|
||||
* [RILT](https://polkadot.js.org/apps/?rpc=wss%3A%2F%2Frococo.kilt.io#/explorer)
|
||||
|
||||
The network uses horizontal message passing (HRMP) to enable communication between parachains and
|
||||
|
||||
Reference in New Issue
Block a user