With the Polkadot runtime upgrade to version 2.0.5, developers can deploy smart contracts on Polkadot, expanding the range of applications that enhance the user experience across the network. Developers, including those working with Solidity, can do so using their existing tools and workflows.


TABLE OF CONTENTS


What's Polkadot Hub?


Polkadot Hub is the platform where smart contract developers can deploy and run their products. While smart contracts are technically deployed on Polkadot Asset Hub, their scope is not limited to a single network. Through the security and interoperability provided by the Polkadot Relay Chain, Polkadot Hub extends its reach across the wider Polkadot ecosystem.


Polkadot Hub is not a network; it is a platform.


Smart contracts on Polkadot


To provide flexibility and make onboarding easier for experienced developers, Polkadot supports smart contract deployment across two distinct backends, each with its own characteristics and target use cases. The following concepts will help you understand the smart contract architecture on Polkadot at a high level:

  • Revive: The pallet included in the Polkadot Asset Hub runtime that provides a unified execution environment, enabling smart contracts written for both the Polkadot Virtual Machine (PVM) and the Ethereum Virtual Machine (EVM) to run within the same runtime.
  • Ethereum Virtual Machine: Polkadot is fully EVM-compatible thanks to REVM, a Rust implementation of the Ethereum Virtual Machine. It allows developers to deploy Solidity smart contracts with no customizations for it and using all their familiar tools (e.g., Foundry, Hardhat, Metamask, etc.)
  • Polkadot Virtual Machine: PVM is Polkadot Hub's native smart contract backend, optimized for high performance. It also supports Solidity and familiar Ethereum tooling.


Even though developers must choose a specific backend when deploying a smart contract, meaning each contract targets either EVM or PVM, contracts deployed on one backend (for example, EVM) can still interact with contracts designed for the other. This allows PVM-based contracts to handle more computationally demanding execution while remaining interoperable with EVM-based contracts.


More information


This article provides a high-level overview of the current state of smart contracts on Polkadot, targeting end-users. If you are a developer, or simply want to explore the topic in more depth, you can find detailed and technical resources in the following sections:

  • Polkadot Wiki: Smart Contracts
    A broad overview of smart contracts on Polkadot, including comparisons between key concepts and technologies. Best suited for power users and those seeking a conceptual understanding.
  • Polkadot Documentation: Smart Contracts on Polkadot Hub
    A comprehensive guide covering everything from deploying your first smart contract to the available tools and workflows. Ideal for developers building on Polkadot.