Skip to main content

Introduction

Overview

peaq offers a variety of options to build on peaq/krest networks, providing builders with a set of tools to create dApps/DePINs using their preferred method. This section aims to provide a comprehensive overview of tools available on peaq/krest networks, both developed by peaq team and available by default based on the network architecture.

SDK

Catering to the needs of DePIN developers, who develop applications for the EoT space, peaq developed an SDK aiming to provide a standard set of functionalities essential to create DePINs. Currently, peaq SDK includes 2 modules: DID and RBAC and available as a Javascript library. peaq SDK is constantly being improved and extended based on the needs and feedback of active developers on peaq/krest networks.

Pallets

peaq/krest networks are built using the Substrate framework, a fundamental part of which is Substrate Pallets. Substrate Pallets allow blockchain developers to extend the functionality of runtime by adding new modules, whether available on Substrate Marketplace or developed by blockchain developers themselves. peaq/krest networks actively utilize open-source pallets and develops their own ones. Below you can see a list of pallets peaq/krest networks rely on.

NOTE

The set of pallets integrated into peaq/krest runtime is subject to change. If you strongly need certain pallets for your dApp, contact peaq team in Discord

  • Assets: Provides the configuration for ERC20 tokens.

  • Balances: Provides a system for managing balances within the peaq/krest networks.

  • BlockReward: Provides the configuration for rewards distribution and disinflation level.

  • Multisig: Provides support for multisig wallets, allowing signing transactions based on multiple signatures.

  • ParachainStaking: Provides a framework for block production on peaq/krest and the mechanism for rewards distribution between collators and delegators.

  • PeaqRbac: It acts as a decentralized access control system, permitting users to specify roles and permissions for resource access management.

  • PeaqStorage: Provides decentralized storage for the peaq/krest networks.

  • PeaqDid: peaq DID enables assigning identifiers to users, devices, and organizations and creates a framework for reading and verifying these IDs.

  • PolkadotXcm: The Cross-Chain Message protocol defines a message format for communication between different Polkadot parachains.

  • Treasury: Provides functionality to manage peaq/krest treasury and fund projects out of this fund.

  • Utility: It stores utility functions for the peaq/krest networks (e.g. sending several calls in a batch).

  • Vesting: Provides functionality for airdop and vesting of tokens.

  • XTokens: Provides functionality to create XCM messages for asset transfers.

Smart Contract

peaq supports 2 types of smart contracts: EVM-based and WASM-based ones. By supporting 2 platforms on both peaq/krest networks we aim to increase the interoperability of our blockchain. This also lets developers coming from EVM-based chains easier time migrating their code while giving WASM developers an option to enjoy higher flexibility and a richer toolset provided by the more advanced system.

EVM

EVM is short for Ethereum Virtual Machine the Ethereum state machine, which became de-facto standard platform for smart contract development. You can use Solidity or Vyper to develop for the EVM side of the chain. Also, you can deploy your existing EVM smart contracts from other chains by simply changing deploying settings.

WASM

WASM (WebAssembly) is a standard for web browsers, like Google, Mozilla, and others. It was developed so that code can be deployed in any browser with the same result. Wasm is high-performance, it's as close to native machine code as possible while still being platform-independent. Most importantly, it supports a variety of languages, including Rust, C/C++, C#, Typescript, Haxe, and Kotlin.