Source code
peaq Node
A peaq node is an application that allows users to participate in the network. The Substrate-based blockchain nodes used by peaq give anyone the capability to be part of the ecosystem and build it with us.
Pallets
peaq Pallet DID
The peaq DID standard supports machines to discover each other, carry out transactions, verify claims, preserve privacy and remain sovereign.
A core value proposition of peaq DID is the standardization of machine interaction through a consortium of diverse industry leaders in a self sovereign world by providing standard interfaces for discovery which allows two participants to successfully engage in a transaction.
peaq Pallet Transaction
The Peaq-Pallet-Transaction is a message bridge to allow the provider/consumer to receive/dispatch transactional events from/to other parties on the network. Other actions can be triggered based on the event data the consumer/provider received.
peaq Pallet RBAC
RBAC approach to restricting access based on roles of individual user.Policy-neutral access-control mechanism defined around roles and privileges.RBAC ensures consumers access only information they need to do their jobs and prevents them from accessing information that doesn't pertain to them.
peaq Storage Pallet
Storage pallet is mainly for storing an item eg. CID (content Identifier) along with the type of that item.Technically, we are storing key-value pairs in the chain storage with the key being (user public key + type of item we are storing) and the value is the item.To call these extrinsic go to the Polkadot app and switch to agung network.
Go to Developer → Extrinsics. And choose the peaqStorage pallet from the list.
Storage pallet has 3 extrinsic calls as of now.
addItem
Params - item type (Max length 64), item (Max length 128).
Description - For adding an item type with any item.
getItem
Params - item type (Max length 64).
Description - For reading the item with the item's type. A user can only access those items which were added through that user an account/public key.
updateItem
Params - item type (Max length 64), item (Max length 128).
Description - For updating item type with a new item. Only items can be updated not item type. Each item type is attached to the user's public key.
peaqScan
peaqScan is a blockchain explorer. It is used to visualize blockchain data from the Agung network. It can also be used for any other substrate-based network like Polkadot, etc. peaqScan was bootstrapped with Create React App (CRA) to leverage the component-based architecture and reaction to app state with hooks. The freedom to structure the application rather than be restricted to a particular pattern was also a consideration.
Ethereum Compatibility
Frontier
Frontier is an Ethereum compatibility layer for Substrate. The goal of Frontier is to allow standard Ethereum DApps to run without modification on Substrate-based chains. Frontier makes this possible by offering some Substrate pallets that can be plugged into a Substrate runtime.
EVM Implementation
The EVM executes Ethereum smart contract bytecode, of which is typically written in a language like Solidity, and then compiles it to EVM bytecode. The goal of the EVM pallet is to emulate the functionality of executing smart contracts on Ethereum within the Substrate runtime. As such, it allows existing EVM code to be executed in Substrate-based blockchains.Inside of the EVM are standard H160 Ethereum-style accounts, and they have associated data such as the balance and nonce. All of the accounts in the EVM are backed by a Substrate account type, which is configurable. Moonbeam has configured the Substrate account type to be a non-standard H160 account to be fully compatibile with Ethereum. As such, you only need a single account to interact with the Substrate runtime and the EVM.
Utility
peaq Pay
This package is developed to facilitate payments on the peaq network, although it can be use on any substrate based network.
Current MVP1 is built to only focus on the transactions between a consumer and a provider of service on the network.
Following are the facilatates:
- The creation of the multisig wallet where the consumer of the service deposit a certain amount required for a service.
- Funding multisig wallet using sender existing wallet on the network.
- Approving refund and spent transactions after a completed charging session.