Skip to content

Commit

Permalink
Merge dev-pathways into develop/index (#249)
Browse files Browse the repository at this point in the history
* removes "crosschain" as a dev pathway from develop/index.md

* save point before adding grid elements

* merges dev-pathways content into dev index page, updates incorrect link to Nova wallet, removes dev-pathways and updates nav

* updates Pathway name to use Application Developers consistently on this page

* adds some info to parachains/index

* update card format on develop/index, adds tip re: smart contracts are in active dev to develop/smart-contracts/index

* update language describing dev paths on develop/toolkit/index for consistency with rest of section

* typo fix

* Apply suggestions from code review

Co-authored-by: Erin Shaben <eshaben@icloud.com>

---------

Co-authored-by: Erin Shaben <eshaben@icloud.com>
  • Loading branch information
2 people authored and nhussein11 committed Dec 19, 2024
1 parent 443ef31 commit 81df544
Show file tree
Hide file tree
Showing 7 changed files with 209 additions and 82 deletions.
1 change: 0 additions & 1 deletion develop/.pages
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
title: Develop
nav:
- index.md
- 'Development Pathways': development-pathways.md
- 'Networks': networks.md
- parachains
- smart-contracts
Expand Down
59 changes: 0 additions & 59 deletions develop/development-pathways.md

This file was deleted.

208 changes: 196 additions & 12 deletions develop/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,29 +6,213 @@ hide:
template: index-page.html
---

# Develop and Deploy with Polkadot
# Develop with Polkadot

Polkadot offers a unique platform for developers to build the next generation of blockchain solutions. Whether developing a custom parachain, deploying smart contracts, or crafting user-facing applications, the Polkadot ecosystem provides the tools, frameworks, and infrastructure to bring your vision to life.
## Introduction

This section builds on concepts from the [Polkadot Protocol](/polkadot-protocol){target=\_blank} section, providing the practical knowledge and resources needed to design, deploy, and operate scalable solutions in the Polkadot ecosystem. By leveraging Polkadot's unique features, such as interoperability and decentralized security, developers can build applications and infrastructure tailored to their needs.
This guide is a starting point for developers who wish to build in the Polkadot ecosystem. To get the most from this section:

## Choose Your Development Path
1. Identify your development pathway:
- [**Parachain Developers**](#parachain-developers) - build, deploy, and maintain custom parachains with the Polkadot SDK
- [**Smart Contract Developers**](#smart-contract-developers) - leverage smart contracts and execute custom logic over existing chains to streamline your development process
- [**Application Developers**](#application-developers) - leverage Polkadot's underlying protocol features to create solutions for your users to interact with the ecosystem
2. Use the sections under your pathway as follows:
- **Learn** - content to deepen your knowledge and understanding
- **Build** - connect to goal-oriented guides and step-by-step tutorials
- **Tools** - tools commonly used in your pathway
- **Resources** - resources for your pathway, including references, code repositories, and outside documentation

- **Parachain developers** - build, deploy, and maintain custom parachains with the Polkadot SDK. From runtime customization to network operations, learn how to create a scalable and efficient parachain
## Development Pathways

- **Where to start** - [Introduction to the Polkadot SDK](/develop/parachains/get-started/intro-polkadot-sdk/){target=\_blank}
Developers can choose from different development pathways to build applications and core blockchain functionality. Each pathway caters to different types of projects and developer skill sets while complementing one another within the broader network.

- **Smart contract developers** - utilize Polkadot's support for Wasm-based contracts with ink! or deploy Solidity contracts on EVM-compatible parachains. Leverage familiar tools to write, test, and manage decentralized logic
The Polkadot ecosystem provides multiple development pathways:

- **Where to start** - [Overview of the Smart Contract Landscape on Polkadot](/develop/smart-contracts/overview/){target=\_blank}
```mermaid
graph TD
A[Development Pathways]
A --> B[Parachain Development]
A --> C[Smart Contract Development]
A --> D[Application Development]
```

- **Application developers** - integrate your applications with the Polkadot ecosystem using wallets, oracles, indexers, and more. Explore guides on how to leverage Polkadot's decentralized infrastructure to deliver high-performing, user-facing solutions
!!! tip
All three pathways can leverage Cross-Consensus Messaging (XCM) to create innovative cross-chain workflows and applications. Get started with these resources:

- **Where to start** - [Polkadot Ecosystem Toolkit](/develop/toolkit/){target=\_blank}
- [**Introduction to XCM**](/develop/interoperability/intro-to-xcm/){target=\_blank} - introduces key concepts, core function definitions, and code examples
- [**XCM Tools**](/develop/toolkit/interoperability/xcm-tools/){target=\_blank} - provides an overview of popular XCM tools
- [**Tutorials for Managing XCM Channels**](/tutorials/interoperability/xcm-channels/){target=\_blank} - guides for using [Polkadot.js Apps](https://polkadot.js.org/apps/#/explorer){target=\_blank} UI to establish cross-chain messaging channels

- **Cross-chain developers** - harness Polkadot's interoperability features to enable secure communication and asset transfers across blockchains. Leverage Cross-Consensus Messaging (XCM) to create innovative cross-chain workflows and applications

- **Where to start** - [Introduction to XCM](/develop/interoperability/intro-to-xcm/){target=\_blank}
### Parachain Developers

Build, deploy, and maintain custom parachains with the Polkadot SDK.

<div class="cards" markdown>

:octicons-book-16:{ .lg .middle } **Learn**

[Parachains Overview](/polkadot-protocol/architecture/parachains/overview/){target=\_blank}

[Custom Parachains](/develop/parachains/get-started/build-custom-parachains/){target=\_blank}

[Introduction to the Polkadot SDK](/develop/parachains/get-started/intro-polkadot-sdk/){target=\_blank}

---

</div>

<div class="cards" markdown>

:octicons-rocket-16:{ .lg .middle } **Build**

[Parachain Developer Zero to Hero Guides](tutorials/polkadot-sdk/parachains/zero-to-hero/){target=\_blank}

[Install Polkadot SDK Dependencies](/develop/parachains/get-started/install-polkadot-sdk/){target=\_blank}

---

</div>

<div class="cards" markdown>

:octicons-tools-16:{.lg .middle} **Tools**


[Parachain Template](https://github.com/paritytech/polkadot-sdk/tree/master/templates/parachain){target=\_blank}

[Open Zeppelin Polkadot Runtime Templates](https://github.com/OpenZeppelin/polkadot-runtime-templates/tree/main){target=\_blank}

---

</div>

<div class="cards" markdown>

:octicons-code-square-16:{.lg .middle} **Resources**


[Polkadot SDK source code repository](https://github.com/paritytech/polkadot-sdk){target=\_blank}

[FRAME source code repository](https://github.com/paritytech/polkadot-sdk/tree/master/substrate/frame){target=\_blank}

---

</div>

### Smart Contract Developers

Leverage smart contracts and execute custom logic over existing chains to streamline your development process.

!!! tip
The Polkadot smart contract ecosystem is in active development. Please expect frequent changes. You can follow progress, or join the discussion, by visiting this [Contracts on AssetHub Roadmap](https://forum.polkadot.network/t/contracts-on-assethub-roadmap/9513/57){target=\_blank} Polkadot Network Forum post.


<div class="cards" markdown>

:octicons-book-16:{ .lg .middle } **Learn**

[Overview - Smart Contracts on Polkadot](/develop/smart-contracts/overview/){target=\_blank}

[EVM Compatible Parachains](/develop/smart-contracts/evm/parachain-contracts/#evm-compatible-parachains){target=\_blank}

---

</div>

<div class="cards" markdown>

:octicons-rocket-16:{.lg .middle} **Build**

[Deploy a Smart Contract to Asset Hub](/develop/smart-contracts/evm/native-evm-contracts/#deploy-a-smart-contract-to-asset-hub){target=\_blank}

[Deploy a Wasm Smart Contract](/develop/smart-contracts/wasm-ink/){target=\_blank}

---

</div>

<div class="cards" markdown>

:octicons-tools-16:{.lg .middle} **Tools**

[`cargo-contract` CLI Tool](https://github.com/use-ink/cargo-contract){target=\_blank}

[Remix - Ethereum IDE](https://remix.ethereum.org/){target=\_blank}

---

</div>

<div class="cards" markdown>

:octicons-code-square-16:{.lg .middle} **Resources**

[Runtime vs Smart Contract - Polkadot SDK Rust docs](https://paritytech.github.io/polkadot-sdk/master/polkadot_sdk_docs/reference_docs/runtime_vs_smart_contract/index.html){target=\_blank}

[Pure Rust Implementation of EVM](https://github.com/rust-ethereum/evm){target=\_blank}

---

</div>

### Application Developers

Integrate with the Polkadot blockchain's underlying protocol features to create solutions that allow users to interact with the ecosystem.

<div class="cards" markdown>

:octicons-book-16:{ .lg .middle } **Learn**

[Options for Wallet Integration](/develop/toolkit/integrations/wallets/){target=\_blank}

[Options for Indexer Integration](/develop/toolkit/integrations/indexers/){target=\_blank}

[Options for Oracle Integration](/develop/toolkit/integrations/oracles/){target=\_blank}

---

</div>

<div class="cards" markdown>

:octicons-rocket-16:{.lg .middle} **Build**

[Install and Get Started with Polkadot.js API](/develop/toolkit/api-libraries/polkadot-js-api/){target=\_blank}

[Install and Get Started with Polkadot-API (PAPI)](/develop/toolkit/api-libraries/papi/){target=\_blank}

[Install and Get Started with Python Substrate Interface](/develop/toolkit/api-libraries/py-substrate-interface/){target=\_blank}

---

</div>

<div class="cards" markdown>

:octicons-tools-16:{.lg .middle} **Tools**

[Polkadot.js API](https://github.com/polkadot-js/api){target=\_blank}

[Polkadot-API (PAPI)](https://github.com/polkadot-api/polkadot-api){target=\_blank}

[Sidecar REST API](https://github.com/paritytech/substrate-api-sidecar){target=\_blank}

---

</div>

<div class="cards" markdown>

:octicons-code-square-16:{.lg .middle} **Resources**

[RPC Endpoints](/develop/networks/){target=\_blank}

[Polkadot Ecosystem Toolkit](/develop/toolkit/){target=\_blank}

---

</div>

## In This Section

Expand Down
12 changes: 6 additions & 6 deletions develop/parachains/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,12 +16,12 @@ With the [Polkadot relay chain](/polkadot-protocol/architecture/polkadot-chain/)

Polkadot SDK’s FRAME framework provides developers with the tools to do the following:

- Customize parachain runtimes
- Develop new pallets
- Add smart contract functionality
- Test your build for a confident deployment
- Deploy your blockchain for use
- Maintain your network including monitoring and upgrades
- **Customize parachain runtimes** - [runtimes](/polkadot-protocol/glossary/#runtime){target=\_blank} are the core building blocks that define the logic and functionality of Polkadot SDK-based parachains and let developers customize the parameters, rules, and behaviors that shape their blockchain network
- **Develop new pallets** - create custom modular pallets to define runtime behavior and acheive desired blockchain functionality
- **Add smart contract functionality** - use specialized pallets to deploy and execute smart contracts, enhancing your chain's functionality and programmability
- **Test your build for a confident deployment** - create a test environment that can simulate runtime and mock transaction execution
- **Deploy your blockchain for use** - take your Polkadot SDK-based blockchain from a local environment to production
- **Maintain your network including monitoring and upgrades** - runtimes can be ugraded through forkless runtime updates, enabling seamless evolution of the parachain

New to parachain development? Start with the [Introduction to the Polkadot SDK](/develop/parachains/get-started/intro-polkadot-sdk/) to discover how this framework simplifies building custom parachains.

Expand Down
3 changes: 3 additions & 0 deletions develop/smart-contracts/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,9 @@ This section guides you through the tools, resources, and guides to help you bui

For developers building smart contracts in the Polkadot ecosystem, the choice between parachains supporting ink! (for Wasm contracts) and EVM-compatible parachains (for Solidity contracts) depend on the preferred development environment and language. By selecting the right parachain, developers can leverage Polkadot's scalability and interoperability while utilizing the framework that best suits their needs.

!!! tip
The Polkadot smart contract ecosystem is in active development. Please expect frequent changes. You can follow progress, or join the discussion, by visiting this [Contracts on AssetHub Roadmap](https://forum.polkadot.network/t/contracts-on-assethub-roadmap/9513/57){target=\_blank} Polkadot Network Forum post.

Here are some key considerations:

- [**Wasm (ink!) contracts**](/develop/smart-contracts/wasm-ink/){target=\_blank} - contracts are written in Rust and compiled to Wasm. The advantage of Wasm is that it allows for more flexibility, speed, and potentially lower execution costs compared to EVM, especially in the context of Polkadot's multi-chain architecture
Expand Down
6 changes: 3 additions & 3 deletions develop/toolkit/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,9 @@ Explore Polkadot's core development toolkit, designed to support a variety of de

Key tools for different audiences:

- **Blockchain developers** - leverage development tools for building and managing Polkadot SDK-based blockchains, optimizing the infrastructure of the ecosystem
- **DApp developers** - develop decentralized applications (dApps) that interact seamlessly with the Polkadot network, using APIs, SDKs, and integration tools for efficient application development
- **Cross-chain application developers** - create applications that operate across multiple blockchains, using Polkadot’s XCM and messaging tools to enable interoperability and asset transfers
- **Parachain developers** - leverage development tools for building and managing Polkadot SDK-based blockchains, optimizing the infrastructure of the ecosystem
- **Application developers** - develop decentralized applications (dApps) that interact seamlessly with the Polkadot network, using APIs, SDKs, and integration tools for efficient application development
- **All development paths** - use Polkadot’s XCM and messaging tools to enable interoperability and asset transfers

## In This Section

Expand Down
2 changes: 1 addition & 1 deletion develop/toolkit/integrations/wallets.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ Wallet types fall into two categories based on their connection to the internet:

A non-custodial, mobile-first wallet for managing assets and interacting with the Polkadot and Kusama ecosystems. It supports staking, governance, cross-chain transfers, and crowdloans. With advanced features, seamless multi-network support, and strong security, Nova Wallet empowers users to explore the full potential of Polkadot parachains on the go.

[:octicons-arrow-right-24: Reference](https://talisman.xyz/){target=\_blank}
[:octicons-arrow-right-24: Reference](https://novawallet.io/){target=\_blank}

- __Talisman__

Expand Down

0 comments on commit 81df544

Please sign in to comment.