Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[FIX] - Adding references to tutorials #230

Merged
merged 26 commits into from
Dec 12, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
6d57b2e
fix: adding reference to tutorials on asset hub page
nhussein11 Dec 2, 2024
2c16109
Add xcm channels
0xLucca Dec 2, 2024
f85450b
Add runtime upgrades
0xLucca Dec 2, 2024
d1fb936
Add chain spec
0xLucca Dec 2, 2024
766fc14
Add custom parachains
0xLucca Dec 2, 2024
63159d8
fix: adding chopsticks
nhussein11 Dec 2, 2024
3941779
fix: zombienet
nhussein11 Dec 2, 2024
aaca161
Update develop/parachains/get-started/build-custom-parachains.md
0xLucca Dec 2, 2024
df4e18a
fix: xcm channels references
nhussein11 Dec 12, 2024
3c03cbd
fix: generate chain specs references
nhussein11 Dec 12, 2024
5188773
fix: generate chain specs 'where to go next'
nhussein11 Dec 12, 2024
5c7c15b
fix: build custom parachains references
nhussein11 Dec 12, 2024
cf15894
fix: runtime upgrades references
nhussein11 Dec 12, 2024
b323b64
fix: chopsticks get started references
nhussein11 Dec 12, 2024
02e1197
fix: zombienet get started references
nhussein11 Dec 12, 2024
de48c98
fix: asset hub references
nhussein11 Dec 12, 2024
1c37779
fix: add existing pallets references
nhussein11 Dec 12, 2024
ec3a6ac
fix: add smart contract funcionality references
nhussein11 Dec 12, 2024
e713da8
fix: make custom pallet references
nhussein11 Dec 12, 2024
3c9c8d6
fix: pallet testing references
nhussein11 Dec 12, 2024
eae507a
fix: generate chain specs references
nhussein11 Dec 12, 2024
721205d
fix: adding comment in build custom parachains
nhussein11 Dec 12, 2024
4c6139f
fix: deploy parachain to polkadot references
nhussein11 Dec 12, 2024
afe1551
fix: setup references
nhussein11 Dec 12, 2024
dd21c2c
fix: consensus get started references removed
nhussein11 Dec 12, 2024
95970ab
fix: architecture parachains references
nhussein11 Dec 12, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
21 changes: 19 additions & 2 deletions develop/interoperability/xcm-channels.md
Original file line number Diff line number Diff line change
Expand Up @@ -59,5 +59,22 @@ Parachain developers have a few options for triggering the required extrinsic ca

Explore the following tutorials for detailed, step-by-step guidance on setting up cross-chain communication channels in Polkadot:

- [Opening HRMP Channels Between Parachains](/tutorials/interoperability/xcm-channels/para-to-para/)
- [Opening HRMP Channels with System Parachains](/tutorials/interoperability/xcm-channels/para-to-system/)
<div class="grid cards" markdown>

- <span class="badge tutorial">Tutorial</span> __Opening HRMP Channels Between Parachains__

---

Learn how to open HRMP channels between parachains on Polkadot. Discover the step-by-step process for establishing uni- and bidirectional communication.

[:octicons-arrow-right-24: Reference](/tutorials/interoperability/xcm-channels/para-to-para/)

- <span class="badge tutorial">Tutorial</span> __Opening HRMP Channels with System Parachains__

---

Learn how to open HRMP channels with Polkadot system parachains. Discover the process for establishing bi-directional communication using a single XCM message.

[:octicons-arrow-right-24: Reference](/tutorials/interoperability/xcm-channels/para-to-system/)

</div>
21 changes: 19 additions & 2 deletions develop/parachains/customize-parachain/add-existing-pallets.md
Original file line number Diff line number Diff line change
Expand Up @@ -148,5 +148,22 @@ Finally, to compose the runtime, update the list of pallets in the same file by

With the pallet successfully added and configured, the runtime is ready to be compiled and used. Following this guide’s steps, you’ve integrated a new pallet into the runtime, set up its dependencies, and ensured proper configuration. You can now proceed to any of the following points:

- Dive deeper by [creating your custom pallet](/develop/parachains/customize-parachain/make-custom-pallet/) to expand the functionality of your blockchain
- Ensure robustness with [Pallet Testing](/develop/parachains/customize-parachain/pallet-testing/) to verify the accuracy and behavior of your code
<div class="grid cards" markdown>

- <span class="badge guide">Guide</span> __Make a Custom Pallet__

---

Learn how to create custom pallets using FRAME, allowing for flexible, modular, and scalable blockchain development. Follow the step-by-step guide.

[:octicons-arrow-right-24: Reference](/develop/parachains/customize-parachain/make-custom-pallet/)

- <span class="badge guide">Guide</span> __Pallet Testing__

---

Learn how to efficiently test pallets in the Polkadot SDK, ensuring the reliability and security of your pallets operations.

[:octicons-arrow-right-24: Reference](/develop/parachains/customize-parachain/pallet-testing/)

</div>
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,30 @@ For a real-world example of how this pallet is implemented in production, you ca

Now that you understand how to enable smart contract functionality in your blockchain, you might want to:

- Take a step back and learn more about EVM and Wasm contracts by visiting the [Smart Contracts](/develop/smart-contracts/overview) guide
- Start building with [Wasm (ink!) contracts](/develop/smart-contracts/wasm-ink/)
- Start building with [EVM contracts](/develop/smart-contracts/evm/)
<div class="grid cards" markdown>

- <span class="badge guide">Guide</span> __Smart Contracts Overview__

---

Learn how developers can build smart contracts on Polkadot by leveraging either Wasm/ink! or EVM contracts across many parachains.

[:octicons-arrow-right-24: Reference](/develop/smart-contracts/overview/)

- <span class="badge guide">Guide</span> __Wasm (ink!) Contracts__

---

Learn to build Wasm smart contracts with ink!, a Rust-based eDSL. Explore installation, contract structure, and key features.

[:octicons-arrow-right-24: Reference](/develop/smart-contracts/wasm-ink/)

- <span class="badge guide">Guide</span> __EVM Contracts__

---

Learn how Polkadot parachains such as Moonbeam, Astar, Acala, and Manta leverage the Ethereum Virtual Machine (EVM) and integrate it into their parachains.

[:octicons-arrow-right-24: Reference](/develop/smart-contracts/evm/)

</div>
28 changes: 25 additions & 3 deletions develop/parachains/customize-parachain/make-custom-pallet.md
Original file line number Diff line number Diff line change
Expand Up @@ -154,8 +154,30 @@ After following all the previous steps, the pallet is now fully implemented. Bel

With the pallet implemented, the next steps involve ensuring its reliability and performance before integrating it into a runtime. Check the following sections:

- [**Testing**](/develop/parachains/testing/) - learn how to effectively test the functionality and reliability of your pallet to ensure it behaves as expected
<div class="grid cards" markdown>

- [**Benchmarking**](/develop/parachains/customize-parachain/benchmarking/) - explore methods to measure the performance and execution cost of your pallet
- <span class="badge guide">Guide</span> __Testing__

- [**Add a Pallet to the Runtime**](/develop/parachains/customize-parachain/add-existing-pallets/) - follow this guide to include your pallet in a Polkadot SDK-based runtime, making it ready for use in your blockchain
---

Learn how to effectively test the functionality and reliability of your pallet to ensure it behaves as expected.

[:octicons-arrow-right-24: Reference](/develop/parachains/testing/)

- <span class="badge guide">Guide</span> __Benchmarking__

---

Explore methods to measure the performance and execution cost of your pallet.

[:octicons-arrow-right-24: Reference](/develop/parachains/testing/benchmarking)

- <span class="badge guide">Guide</span> __Add a Pallet to the Runtime__

---

Follow this guide to include your pallet in a Polkadot SDK-based runtime, making it ready for use in your blockchain.

[:octicons-arrow-right-24: Reference](/develop/parachains/customize-parachain/add-existing-pallets/)

</div>
13 changes: 12 additions & 1 deletion develop/parachains/customize-parachain/pallet-testing.md
Original file line number Diff line number Diff line change
Expand Up @@ -105,4 +105,15 @@ Some key considerations are:
## Where to Go Next

- Dive into the full implementation of the [`mock.rs`](https://github.com/paritytech/polkadot-sdk/blob/master/templates/solochain/pallets/template/src/mock.rs){target=\_blank} and [`test.rs`](https://github.com/paritytech/polkadot-sdk/blob/master/templates/solochain/pallets/template/src/tests.rs){target=\_blank} files in the [Solochain Template](https://github.com/paritytech/polkadot-sdk/tree/master/templates/solochain){target=_blank}
- To evaluate the resource usage of your pallet operations, refer to the [Benchmarking documentation](/develop/parachains/customize-parachain/benchmarking/) for guidance on measuring efficiency

<div class="grid cards" markdown>

- <span class="badge guide">Guide</span> __Benchmarking__

---

Explore methods to measure the performance and execution cost of your pallet.

[:octicons-arrow-right-24: Reference](/develop/parachains/testing/benchmarking)

</div>
32 changes: 29 additions & 3 deletions develop/parachains/deployment/generate-chain-specs.md
Original file line number Diff line number Diff line change
Expand Up @@ -131,6 +131,32 @@ The raw chain specification can be used to initialize the genesis storage for a

After generating a chain specification, you can use it to initialize the genesis storage for a node. Refer to the following guides to learn how to proceed with the deployment of your blockchain:

- [**Obtain Coretime**](/develop/parachains/deployment/obtain-coretime/) - learn how to obtain the necessary coretime configuration to synchronize your blockchain’s timestamping and enhance its performance
- [**Deployment**](/develop/parachains/deployment/) - explore the steps required to deploy your chain specification, ensuring a smooth launch of your network and proper node operation
- [**Maintenance**](/develop/parachains/maintenance/) - discover best practices for maintaining your blockchain post-deployment, including how to manage upgrades and monitor network health
<div class="grid cards" markdown>

- <span class="badge guide">Guide</span> __Obtain Coretime__

---

Learn how to obtain the necessary coretime configuration to synchronize your blockchain’s timestamping and enhance its performance.

[:octicons-arrow-right-24: Reference](/develop/parachains/deployment/obtain-coretime/)

- <span class="badge guide">Guide</span> __Deployment__

---

Explore the steps required to deploy your chain specification, ensuring a smooth launch of your network and proper node operation.


[:octicons-arrow-right-24: Reference](/develop/parachains/deployment/)

- <span class="badge guide">Guide</span> __Maintenance__

---

Discover best practices for maintaining your blockchain post-deployment, including how to manage upgrades and monitor network health.


[:octicons-arrow-right-24: Reference](/develop/parachains/maintenance/)

</div>
3 changes: 2 additions & 1 deletion develop/parachains/get-started/build-custom-parachains.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,8 +52,9 @@ Building a custom blockchain with the Polkadot SDK involves several core steps,

Each of these steps is designed to build on the last, helping ensure that your custom blockchain is functional, optimized, and ready for deployment within the Polkadot ecosystem or beyond.

<!-- This page will be removed -->
Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This page will be removed in #246

## Where to Go Next

Once your chain is functional locally, depending on your project’s goals, you can deploy to a TestNet to monitor performance and gather feedback or launch directly on a MainNet. To learn more about this process, check the [Deploy a Parachain](/develop/parachains/deployment/) section of the documentation.

After deployment, regular monitoring and maintenance are essential to ensure that the chain is functioning as expected. Developers need to be able to monitor the chain's performance, identify issues, and troubleshoot problems. Key activities include tracking network health, node performance, and transaction throughput. It's also essential to test the blockchain’s scalability under high load and perform security audits regularly to prevent vulnerabilities. For more information on monitoring and maintenance, refer to the [Maintenance](/develop/parachains/maintenance/) section.
After deployment, regular monitoring and maintenance are essential to ensure that the chain is functioning as expected. Developers need to be able to monitor the chain's performance, identify issues, and troubleshoot problems. Key activities include tracking network health, node performance, and transaction throughput. It's also essential to test the blockchain’s scalability under high load and perform security audits regularly to prevent vulnerabilities. For more information on monitoring and maintenance, refer to the [Maintenance](/develop/parachains/maintenance/) section.
40 changes: 36 additions & 4 deletions develop/parachains/get-started/deploy-parachain-to-polkadot.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,39 @@ flowchart TD

Deploying a Polkadot SDK-based blockchain is a multi-step process that requires careful planning, from generating chain specs and compiling the runtime to managing post-launch updates. By understanding the deployment process and utilizing the right tools, developers can confidently take their blockchain from development to production. For more on this topic, check out the following resources:

- [**Generate Chain Specifications**](/develop/parachains/deployment/generate-chain-specs/) - learn how to generate a chain specification for your blockchain
- [**Building Deterministic Runtimes**](/develop/parachains/deployment/build-deterministic-runtime/) - learn how to build deterministic runtimes for your blockchain
- [**Infrastructure**](/infrastructure/) - learn about the different infrastructure options available for your blockchain
- [**Maintenance**](/develop/parachains/maintenance/) - discover how to manage updates on your blockchain to ensure smooth operation
<div class="grid cards" markdown>

- <span class="badge guide">Guide</span> __Generate Chain Specifications__

---

Learn how to generate a chain specification for your blockchain.

[:octicons-arrow-right-24: Reference](/develop/parachains/deployment/generate-chain-specs/)

- <span class="badge guide">Guide</span> __Building Deterministic Runtimes__

---

Learn how to build deterministic runtimes for your blockchain.

[:octicons-arrow-right-24: Reference](/develop/parachains/deployment/build-deterministic-runtime/)

- <span class="badge guide">Guide</span> __Infrastructure__

---

Learn about the different infrastructure options available for your blockchain.

[:octicons-arrow-right-24: Reference](/infrastructure/)


- <span class="badge guide">Guide</span> __Maintenance__

---

Discover how to manage updates on your blockchain to ensure smooth operation.

[:octicons-arrow-right-24: Reference](/develop/parachains/maintenance/)

</div>
12 changes: 12 additions & 0 deletions develop/parachains/maintenance/runtime-upgrades.md
Original file line number Diff line number Diff line change
Expand Up @@ -71,4 +71,16 @@ FRAME storage migrations run in this order:
2. System `frame_system::on_runtime_upgrade` functions
3. All `on_runtime_upgrade` functions defined in the runtime starting with the last pallet in the `construct_runtime!` macro

## Where to Go Next

<div class="grid cards" markdown>

- <span class="badge tutorial">Tutorial</span> __Upgrade a Running Network__

---

Learn how to perform forkless runtime upgrades on a Polkadot SDK-based blockchain. Add features and modify parameters without network disruption.

[:octicons-arrow-right-24: Reference](tutorials/polkadot-sdk/parachains/local-chain/upgrade-a-running-network/)

</div>
12 changes: 11 additions & 1 deletion develop/parachains/testing/setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,4 +54,14 @@ With the mock environment in place, you can now write tests to validate how your

You can view a complete example of an integration test in the [Astar parachain](https://github.com/AstarNetwork/Astar/tree/master/tests/integration){target=\_blank} codebase.

For more advanced information on runtime testing, please refer to the [Runtime Testing](/develop/parachains/testing/runtime/) article.
<div class="grid cards" markdown>

- <span class="badge guide">Guide</span> __Pallet Testing__

---

Learn how to test your blockchain functionality using unit tests.

[:octicons-arrow-right-24: Reference](/develop/parachains/testing/pallet-testing/)

</div>
Original file line number Diff line number Diff line change
Expand Up @@ -191,4 +191,14 @@ These are the methods that can be invoked and their parameters:

## Where to Go Next

- Visit the [Fork a Chain with Chopsticks](/tutorials/polkadot-sdk/testing/fork-live-chains/){target=\_blank} guide for step-by-step instructions for configuring and interacting with your forked chain.
<div class="grid cards" markdown>

- <span class="badge tutorial">Tutorial</span> __Fork a Chain with Chopsticks__

---

Visit this guide for step-by-step instructions for configuring and interacting with your forked chain.

[:octicons-arrow-right-24: Reference](/tutorials/polkadot-sdk/testing/fork-live-chains/)

</div>
Original file line number Diff line number Diff line change
Expand Up @@ -840,4 +840,16 @@ You can use the `hrmp_channels` keyword to define further parameters for the XCM
- `max_capacity` ++"number"++ - maximum capacity of the HRMP channel
- `max_message_size` ++"number"++ - maximum message size allowed in the HRMP channel

## Where to Go Next

<div class="grid cards" markdown>

- <span class="badge tutorial">Tutorial</span> __Spawn a Basic Chain with Zombienet__

---

Learn to spawn, connect to and monitor a basic blockchain network with Zombienet, using customizable configurations for streamlined development and debugging.

[:octicons-arrow-right-24: Reference](/tutorials/polkadot-sdk/testing/spawn-basic-chain/)

</div>
3 changes: 1 addition & 2 deletions polkadot-protocol/architecture/parachains/consensus.md
Original file line number Diff line number Diff line change
Expand Up @@ -113,5 +113,4 @@ It is important to understand that relay chain blocks do not store full parachai

For more technical details, refer to the:

- [Parachain Wiki](https://wiki.polkadot.network/docs/learn-parachains){target=\_blank} page
- [Polkadot SDK Implementation Guide](/develop/parachains/get-started) section
- [Parachain Wiki](https://wiki.polkadot.network/docs/learn-parachains){target=\_blank} page
14 changes: 13 additions & 1 deletion polkadot-protocol/architecture/parachains/overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -116,4 +116,16 @@ The XCM protocol mitigates common interoperability challenges in isolated blockc

## Where to Go Next

For further information about the consensus protocol used by parachains, see the [Consensus](/polkadot-protocol/architecture/parachains/consensus/) page.
For further information about the consensus protocol used by parachains, see the [Consensus](/polkadot-protocol/architecture/parachains/consensus/) page.

<div class="grid cards" markdown>

- <span class="badge learn">Learn</span> __Consensus__

---

Understand how the blocks authored by parachain collators are secured by the relay chain validators and how the parachain transactions achieve finality.

[:octicons-arrow-right-24: Reference](/polkadot-protocol/architecture/parachains/consensus/)

</div>
32 changes: 31 additions & 1 deletion polkadot-protocol/architecture/system-chains/asset-hub.md
Original file line number Diff line number Diff line change
Expand Up @@ -200,4 +200,34 @@ Sometimes, XCM transfers may fail due to liquidity or other errors. Failed trans
- **Relay chain to system parachain** - look for the `dmpqueue(ExecutedDownward)` event on the parachain with an `Incomplete` outcome and an error type such as `UntrustedReserveLocation`
- **Parachain to parachain** - monitor for `xcmpqueue(Fail)` on the destination parachain with error types like `TooExpensive`

For detailed error management in XCM, see Gavin Wood's blog post on [XCM Execution and Error Management](https://www.polkadot.network/blog/xcm-part-three-execution-and-error-management){target=\_blank}.
For detailed error management in XCM, see Gavin Wood's blog post on [XCM Execution and Error Management](https://www.polkadot.network/blog/xcm-part-three-execution-and-error-management){target=\_blank}.

## Where to Go Next

<div class="grid cards" markdown>

- <span class="badge tutorial">Tutorial</span> __Register a Local Asset__

---

Comprehensive guide to registering a local asset on the Asset Hub system parachain, including step-by-step instructions.

[:octicons-arrow-right-24: Reference](/tutorials/polkadot-sdk/system-chains/asset-hub/register-local-asset/)

- <span class="badge tutorial">Tutorial</span> __Register a Foreign Asset__

---

An in-depth guide to registering a foreign asset on the Asset Hub parachain, providing clear, step-by-step instructions.

[:octicons-arrow-right-24: Reference](/tutorials/polkadot-sdk/system-chains/asset-hub/register-foreign-asset/)

- <span class="badge tutorial">Tutorial</span> __Convert Assets__

---

A guide detailing the step-by-step process of converting assets on Asset Hub, helping users efficiently navigate asset management on the platform.

[:octicons-arrow-right-24: Reference](/tutorials/polkadot-sdk/system-chains/asset-hub/asset-conversion/)

</div>