forked from r0gue-io/base-parachain
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #13 from r0gue-io/bruno/update-README
chore: update README for improved onboarding experience
- Loading branch information
Showing
3 changed files
with
93 additions
and
8 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,17 +1,74 @@ | ||
<div align="center"> | ||
|
||
# EVM Parachain Template | ||
|
||
A new [Cumulus](https://github.com/paritytech/polkadot-sdk/tree/master/cumulus)-based Substrate node, configured with [Frontier](https://github.com/polkadot-evm/frontier), enabling compatibility with the Ethereum Virtual Machine (EVM). | ||
<img height="70px" alt="Polkadot SDK Logo" src="https://github.com/paritytech/polkadot-sdk/raw/master/docs/images/Polkadot_Logo_Horizontal_Pink_White.png#gh-dark-mode-only"/> | ||
<img height="70px" alt="Polkadot SDK Logo" src="https://github.com/paritytech/polkadot-sdk/raw/master/docs/images/Polkadot_Logo_Horizontal_Pink_Black.png#gh-light-mode-only"/> | ||
<br /><br /> | ||
<a href="r0gue.io"><img src="https://github.com/user-attachments/assets/96830651-c3db-412a-9cb4-6fcd8ea6231b" alt="R0GUE Logo" /></a> | ||
|
||
[![Twitter URL](https://img.shields.io/twitter/follow/Pop?style=social)](https://x.com/onpopio/) | ||
[![Twitter URL](https://img.shields.io/twitter/follow/R0GUE?style=social)](https://twitter.com/gor0gue) | ||
[![Telegram](https://img.shields.io/badge/Telegram-gray?logo=telegram)](https://t.me/onpopio) | ||
|
||
> This is the [Pop CLI](https://github.com/r0gue-io/pop-cli) EVM parachain template. | ||
> It is based on the [Polkadot SDK](https://github.com/paritytech/polkadot-sdk) and is updated by [R0GUE](r0gue.io) after releases in the main [Polkadot SDK monorepo](https://github.com/paritytech/polkadot-sdk). | ||
</div> | ||
|
||
* ⏫ This template provides a starting point to build an EVM [parachain](https://wiki.polkadot.network/docs/learn-parachains). | ||
|
||
* ☁️ It is based on the | ||
[Cumulus](https://paritytech.github.io/polkadot-sdk/master/polkadot_sdk_docs/polkadot_sdk/cumulus/index.html) framework. | ||
|
||
* 🔧 Its [runtime](./runtime) is configured with Frontier, enabling compatibility with the Ethereum Virtual Machine (EVM). | ||
|
||
|
||
## Template Structure | ||
|
||
A Polkadot SDK based project such as this one consists of: | ||
|
||
* 💿 [Node](./node/README.md) - the binary application. | ||
* 🧮 [Runtime](./runtime/README.md) - the core logic of the parachain. | ||
|
||
## Getting Started | ||
|
||
#### Install [Pop CLI](https://github.com/r0gue-io/pop-cli) - the all-in-one Polkadot development tool: | ||
> Detailed installation instructions can be found [here](https://learn.onpop.io/v/cli/installing-pop-cli). | ||
``` | ||
cargo install --force --locked pop-cli | ||
``` | ||
|
||
#### Start a new parachain project with this template: | ||
``` | ||
pop new parachain | ||
``` | ||
> When prompted, select 'Pop' as the template provider and 'EVM' as the type of parachain. | ||
> | ||
> More info can be found [here](https://learn.onpop.io/v/appchains/guides/create-a-new-parachain/create-an-evm-parachain). | ||
#### Learn how to run your parachain using the `pop up` command: | ||
```sh | ||
pop up parachain -f ./network.toml | ||
``` | ||
> 👉 https://learn.onpop.io/v/appchains/guides/running-your-parachain | ||
### Learning Resources | ||
|
||
* 🧑🏫 To learn about Polkadot in general, [Polkadot.network](https://polkadot.network/) website is a good starting point. | ||
|
||
This project is a fork of the [Base Parachain Template](https://github.com/r0gue-io/base-parachain). | ||
* ⭕ Learn more about parachains [here](https://wiki.polkadot.network/docs/learn-parachains). | ||
|
||
It is used to generate parachains using [Pop CLI](https://github.com/r0gue-io/pop-cli), an all-in-one tool for Polkadot development. | ||
* 🧑🔧 For technical introduction, [here](https://github.com/paritytech/polkadot-sdk#-documentation) are | ||
the Polkadot SDK documentation resources. | ||
|
||
## Next Steps | ||
* 📖 To learn how to develop parachains with Pop CLI, read the [guides](https://learn.onpop.io/v/appchains). | ||
|
||
💥 Learn more about Pop CLI [here](https://learn.onpop.io/pop/v/pop-cli). | ||
### Support | ||
|
||
🚀 Learn about how to run your own parachain testnet using Pop CLI [here](https://learn.onpop.io/pop/v/pop-cli/parachains/running-your-parachain). | ||
* 💡 Be part of our passionate community of Web3 pioneers. [Join our Telegram](https://t.me/onpopio)! | ||
|
||
👉 Learn more about parachains [here](https://wiki.polkadot.network/docs/learn-parachains). | ||
* 👥 Additionally, there are [GitHub issues](https://github.com/r0gue-io/base-parachain/issues) and | ||
[Polkadot Stack Exchange](https://polkadot.stackexchange.com/). | ||
|
||
🧙 Learn about how to build using this template [here](https://docs.substrate.io/tutorials/). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
# Node | ||
|
||
ℹ️ A node - in Polkadot - is a binary executable, whose primary purpose is to execute the [runtime](../runtime/README.md). | ||
|
||
🔗 It communicates with other nodes in the network, and aims for | ||
[consensus](https://wiki.polkadot.network/docs/learn-consensus) among them. | ||
|
||
⚙️ It acts as a remote procedure call (RPC) server, allowing interaction with the blockchain. | ||
|
||
👉 Learn more about the architecture, and the difference between a node and a runtime | ||
[here](https://paritytech.github.io/polkadot-sdk/master/polkadot_sdk_docs/reference_docs/wasm_meta_protocol/index.html). | ||
|
||
👇 Here are the most important files in this node template: | ||
|
||
- [`chain_spec.rs`](./src/chain_spec.rs): A chain specification is a source code file that defines the chain's | ||
initial (genesis) state. | ||
- [`service.rs`](./src/service.rs): This file defines the node implementation. | ||
It's a place to configure consensus-related topics. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
# Runtime | ||
|
||
ℹ️ The runtime (in other words, a state transition function), refers to the core logic of the parachain that is | ||
responsible for validating blocks and executing the state changes they define. | ||
|
||
💁 The runtime in this template is constructed using ready-made FRAME pallets that ship with | ||
[Polkadot SDK](https://github.com/paritytech/polkadot-sdk). | ||
|
||
👉 Learn more about FRAME | ||
[here](https://paritytech.github.io/polkadot-sdk/master/polkadot_sdk_docs/polkadot_sdk/frame_runtime/index.html). |