RollApps
RollApps are scalable consensus-free blockchains that leverage Dymension Layer 1 for security and access to liquidity. Unlike traditional blockchains, which manage a distributed set of validators, RollApps publish transaction data to a different blockchain so anyone can validate the correctness of the state.
- Transferring - RollApps leverage Dymension's security guarantees to ensure safe deposits and withdrawals.
- Tokens - RollApps can charge gas fees in custom tokens, mint new tokens, and distribute them.
- Governance - RollApps feature an onchain governance mechanism that allows for the decentralized control of specific onchain decisions and the management of funds owned by the RollApps.
RollApp Development Kit
Dymension supports various virtual machines and custom execution environments. New execution environments may be added as explained in the Dymension RollApp Standards. Dymension currently supports the following frameworks:
Owners
RollApp "owners" are the creators of the RollApp and are eligible for Sponsorship rewards. RollApp owners do not have control over the RollApp besides being able to initially create and set the RollApp's information. RollApp owners do not control the funds deposited in a RollApp, nor do have operational responsibilities of managing the RollApp.
RollApp ownership may be transferred to a different entity which will then receive Sponsorship rewards to the new address.
Sequencers
RollApps are operated by "Sequencers." Sequencers validate, order, and process transactions. After a transaction is submitted by a user, the Sequencer responds with a state update. At a configurable period the Sequencer batches the processed transactions. Batched blocks are gossiped to peer full nodes as well as published onchain to a data availability network of the RollApp's choice.
After receiving a response from the data availability network that the published data was accepted, the Sequencer then publishes the state root to Dymension. Metadata, including a reference path to the chosen data availability network, is submitted to Dymension along with the RollApp's updated state root. With data published onchain, Dymension may then verify any fraud proof submissions.
RollApps utilize Dymint to process transactions and network the created blocks. This core functionality enables the RollApp architecture. Dymint implements elastic block production (EBP) for significantly greater operating efficiencies. Instead of continually publishing blocks with no transaction data, blocks are produced on-demand as transactions arrive into the mempool of a Sequencer. This is designed to significantly reduce the operating costs of a RollApp Sequencer.
Sequencers produce blocks with no transactions only at certain defined configurable checkpoints (e.g. every minute) to provide stable state transitions independent of transactions (e.g. minting based on epoch). As such, RollApps by default utilize time-based distributions rather than height-based.