March 9, 2022
peaq now supports ink! and Ethereum Virtual Machine (EVM) Smart Contracts
peaq now supports ink! and Ethereum Virtual Machine (EVM) smart contracts, allowing developers to write smart contracts in the Rust and Solidity programming languages
Before diving in, here’s a short description of the key terms in this article:
- ink!: An eDSL (Embedded Domain Specific Language) to write smart contracts in Rust for blockchains built using Substrate.
- Rust: Rust is a multi-paradigm, general-purpose programming language designed for performance and safety, especially safe concurrency.
- Substrate: A flexible, open, interoperable, and future-proof blockchain framework. peaq is built with Substrate.
- Ethereum Virtual Machine (EVM): A computation engine that handles smart contract deployment and execution.
- Pallet: A set of modules and support libraries that simplify runtime development.
- Solidity: Solidity is an object-oriented programming language for writing smart contracts. It is used for implementing smart contracts on various blockchain platforms, most notably, Ethereum
ink! and EVM
In order to successfully enable our vision of a Web3-based machine economy - what we call the Economy of Things - the appropriate foundations must be laid down. Core to these foundations is interoperability and open cooperation. To this end;
- peaq now supports the EVM pallet (runtime module), which is essentially an Ethereum Virtual Machine implementation on Substrate so that Solidity contracts can be deployed and run on peaq.
- peaq now supports the ink! contract pallet, which enables WASM (Web Assembly) based Substrate native Smart Contracts written in Rust.
While we see ink! smart contracts becoming the preferred means of writing smart contracts, peaq will integrate and be interoperable with several projects that use EVM, while also making it possible for Solidity developers to build and innovate on peaq.
This also enables more developers with diverse programming backgrounds to build smart contracts on peaq. More people able to write smart contracts on peaq means more people able to build dApps on peaq, and dApps are what make the Web3 machine economy go round.
peaq has started integrating with other Web3 projects to enable various decentralized applications for machines in the The Economy of Things. By means of these integrations peaq aims to enable machines to, for example, trade data on decentralized data marketplaces, or maximize returns on machine economy investments via yield farming protocols. All with the goal of providing the best possible infrastructure for the Web3 machine economy to emerge and flourish.
The pallets are now available on peaq’s Github.
How it works
In the current implementation, we use pallet-EVM and pallet-Ethereum, and expose ethereum RPCs (and additionally tracing RPCs through a specialized fork of the node) to support the Ethereum functionalities. Users can therefore use Ethereum’s tools, such as Metamask and Remix on peaq with near native experience.
Because the Ethereum address (H160) and Substrate address (H256) are not compatible, there are two address systems on our chain. Users can use the Substrate’s address to interact with the Substrate ecosystem, and use the Ethereum address on the Ethereum ecosystem side. However, transferring peaq tokens between the two is a straightforward process and deposit/withdrawal transactions can be performed on either Substrate or Ethereum using address equivalents of the address on the other side.
What the peaq network offers
peaq enables people and organizations to build decentralized applications (dApps) for users of vehicles, machines, robots and devices, while empowering both app builders and users to govern and earn from them by leveraging DeFi (Decentralized Finance) and Machine NFTs. Core to developing dApps are peaq's Modular DePIN Functions. We recently released peaq access as the second of the Modular DePIN Functions that peaq provides to dApp builders. The first we released was peaq ID - Self-Sovereign Identity for Machines, and the third will be peaq pay. These three Modular DePIN Functions are the vital foundations for any dApp developer anywhere in the world to build a dApp for machines, vehicles, robots and devices on the peaq network.
The pallets are now available on peaq’s Github.
Want to build the Economy of Things?
We’re hiring across the board, from engineering to communications. Join us in building the Economy of Things.
Are you interested in building a dApp for vehicles, robots, devices and other machines? Get your idea funded, and start building today.
Want to stay in the loop? Visit our website and join the conversation on our channels.