Introduction
Overview
peaq offers a variety of options to build on peaq/agung 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/agung 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 a Javascript SDK aiming to provide a standard set of functionalities essential to create DePINs. Currently, peaq SDK includes 3 modules: DID, RBAC and Storage. The peaq SDK is constantly being improved and extended based on the needs and feedback of active developers on peaq/agung networks.
Pallets
peaq/agung 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/agung networks actively utilize open-source pallets and develops their own ones. Below you can see a list of pallets peaq/agung networks rely on.
The set of pallets integrated into peaq/agung 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/agung 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/agung 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/agung 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/agung treasury and fund projects out of this fund.
Utility: It stores utility functions for the peaq/agung 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 Contracts
peaq supports 2 types of smart contracts: EVM-based and WASM-based ones. By supporting 2 platforms on both peaq/agung 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, such as rcp url and connecting your funded wallet. If you are unfamiliar with the deployment process with EVM smart contracts on peaq/agung, explore our EVM tutorial.
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. Check the WASM documentation on how to deploy this type of contract using a local Substrate node.
Tooling
Particle Abstraction
Particle Network provides a Wallet Abstraction stack that unifies all chains through Universal Accounts. It enables social logins and account abstraction (ERC-4337) on the peaq ecosystem via various SDKs for different platforms including Web, Unity, Android, iOS, Flutter, and React Native.
Key features include:
Particle Connect: A custom connection kit for social logins and Web3 wallet connections.
Particle Auth: A library facilitating social logins with a standard modal or custom interface.
External Connection Kits: Support for Web3Modal, Web3-Onboard, and RainbowKit with integration of Particle's standalone AA SDK for account abstraction.
Indexers
SubQuery is a blockchain data indexer offering fast, flexible, and open-source APIs for Web3 projects. It supports multiple ecosystems, including peaq, and allows developers to create comprehensive dashboard analytics and cross-chain block scanners. It allows for multi-chain support which consolidates data across multiple blockchains within a unified project.
Hosting Options:
Locally: Run on your computer or preferred cloud provider.
Managed Service: Host on SubQuery's enterprise-level service for mission-critical data.
Decentralized Network: Publish to the SubQuery Network for a scalable and reliable data service.