Dymension🤑Dymension is similar to a full-stack web application where users interact with RollApps (front-end), Dymension (back-end) acts as the coordinator for the ecosystem, and the data availability networks (database) provide a place to publicize data.
RollApps are the interactive applications for the Dymension network. You can build games, DeFi, NFT projects and much more!
Dymension plays a similar role to a server in a traditional web application. It orchestrates the network by handling requests from RollApps and facilitating communication among them (p.s. it also has an AMM to trade your favorite RollApp token).
Data Availability Networks play similar role to a databases in web applications, providing data as needed. Unlike traditional databases DA networks are decentralized and hold data for shorter periods.
Dymension RDK (RollApp Development Kit) is the Cosmos SDK for RollApps. The Cosmos SDK is a development kit that comes pre-built with various modules that expediate the building process.
RollApps are composed out of two core services, client and server. The server is the application side designated for the RollApp deployer to implement custom business logic alongside the pre-packaged modules. The client component, referred to as dymint, is a drop-in replacement for Tendermint and responsible for block production, peer message propagation and inter-layer networking.
dymension
LearnRollAppsDymension RDK
Dymension RDK
Dymension RDK (RollApp Development Kit) is the Cosmos SDK for RollApps. The Cosmos SDK is a development kit that comes pre-built with various modules that expediate the building process.
RollApps are composed out of two core services, client and server. The server is the application side designated for the RollApp deployer to implement custom business logic alongside the pre-packaged modules. The client component, referred to as dymint, is a drop-in replacement for Tendermint and responsible for block production, peer message propagation and inter-layer networking.
dymint-overview
Most Cosmos SDK modules may be integrated into the RollApp for building a RollApp. Core modules inherited from the Cosmos SDK and IBC are:
Bank - Facilitating token transfers
Gov - onchain proposals and voting
Upgrade - Handling software upgrades
IBC - Bridging protocol
Additional smart contract frameworks have been developed and deployed to production under various licenses:
Ethermint - EVM smart contracts
CosmWasm - Wasm framework built Confio and Cosmos contributors
Unlike the Cosmos SDK default modules, a few adjustments have been made that define the Dymension RDK:
Epochs - RollApps utilize elastic block production which may cause inconsistencies in block production thus RollApps utilize time-based rather than height-based approach for state triggers.
Mint - RollApps utilize time-based mint module built for consistent token creation. The mint module built by the Osmosis and Stride teams has been generalized by removing references to pools/incentive structures tied to the aformentioned protocols.
Dist - Allocates tokens between the Sequencer (block proposer), members, and community pool.
Sequencers - Creates an account to receive rewards for operating the RollApp
Staking - Wrapper on the existing Cosmos SDK Staking module that prevents validator updates on the Proof-of-stake layer.
Dymint
Overview
RollApps are similar to Cosmos App-Chains but outsource the overhead of reaching consensus to the Dymension Hub. The Dymension Hub accepts state root updates from RollApp Sequencers optimistically and may revert any state transition if proven invalid with fraud proofs. State roots updates enable light client bridging and access to cross-chain message passing.
Transaction lifecycle
Sequencers are the RollApp operators that validate, order, and process transactions. Sequencers expose RPC end-points for users to submit transactions that are valid according to the state machine of the RollApp. After a transaction is submitted and processed, the Sequencer responds with an immediate state update.
At a configurable period the Sequencer batches the locally existing 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. Block gossiping provides peer full nodes a lower latency for receiving state updates, however, economic security is derived from publishing data on a decentralized network. Therefore, full nodes of the RollApp network may request data from the data availability network and verify the RollApp's state root.
After receiving a response from the data availability network that the published data was accepted, the Sequencer then publishes the state root to the Dymension Hub. Metadata, including a reference path to the chosen data availability network, is submitted to the Dymension Hub along with the RollApp's updated state root. With data published onchain the Dymension Hub may then verify any fraud proof submissions.
dymint-overview
As blocks are produced optimisitcally and don't require active network validation Sequencers are able to produce blocks at configurably low block times. RollApps deployed to the 35-C network were able to maintain an average latency period of 0.2 second with max TPS of ~20,000 transactions.
Base layer unavailability
Upon base layer unavailability, Dymint does not process transactions in the mempool but continually tries to send a transaction to the appropriate base layer. Upon a positive liveness response from the base layer Dymint will resume processing existing transactions in the mempool. While it is possible to configure Dymint in a manner that continue to operate without publishing transaction data onchain, Dymension's core team has taken an approach of satisfying security over liveness properties during the RollApp's operation.
Elastic block production
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 (which is commonly found in Cosmos app-chains).
Bridging
Overview
Dymension's RDK builds upon the Cosmos SDK by adding new modules and modifying existing ones for ensuring RollApp compatibility with the Cosmos ecosystem. New modules are designed specifically for handling validator-less RollApp application logic. RollApps are capable of interacting with any IBC-enabled chain using the Dymension Hub and as such will be a part of the growing IBC ecosystem.
dymint-overview
Dymension as a protocol is designed to facilitate the growth of the Cosmos and inter-chain ecosystem. By being natively IBC-enabled, the Dymension Hub facilitates trust-minimized message passing between RollApps, Cosmos zones, and further IBC-enabled ecosystems.
Unlike traditional Cosmos app-chains, RollApps delegate consensus to the Dymension Hub. The Dymension Hub thus acts as the decentralized source of truth and decides when a RollApp is in good standing. As such, the Dymension Hub intermediates transfers in and out of RollApps. By utilizing the existing IBC stack, RollApps are able to be compatible with the IBC-enabled ecosystem even without consensus.
Escrow IBC
RollApp Sequencers produce and publish blocks optimistically (i.e. without active validation from Dymension Hub nodes). Thus, for bridging out the Dymension Hub enforces a dispute period for any network participant to submit a fraud proof againist the published state root. If no one submits a fraud proof, the state root is assumed to be valid for light clients.
For immediate IBC transfers, the Dymension protocol will implement a version of the Escrow IBC. This will facilitate market making opportunities for new participants and enable fast withdrawals for RollApp users. The specification of eIBC is in-progress and the Dymension core team welcomes all ecosystem participants in the discussion and development of the protocol.
Dymension
Powering the Internet of RollApps
Dymension is a decentralized Delegated Proof-of-Stake L1 blockchain secured by the DYM token. It is custom built to provide RollApps with security, interoperability, and liquidity.
Security - RollApp funds are secured by the validators of Dymension.
Bridging - RollApps bridge to each other and the entire crypto economy via a single IBC connection to Dymension.
Liquidity - The only application logic in the Dymension Hub which is not strictly restricted for handling RollApp validity and bridging is an embedded Automated Market Maker (AMM). The AMM is designed to expose RollApps to efficient asset routing, price discovery, and most importantly shared liquidity for the entire ecosystem.
Dymension is akin to an internet service provider. It serves as a decentralized router that connects RollApps to the crypto economy. Dymension facilitates the vertical integration of modular blockchains in which network and liquidity bootstrapping is coupled in one user experience reducing the amount of time to deploy a blockchain to as little as a few minutes.
DYM Issuance
The issuance of DYM tokens is a dynamic process based on the proportion of DYM tokens staked relative to the total supply. The Dymension protocol algorithmically operates on a set of predefined
Algorithmic Issuance
The Dymension protocol adjusts the DYM issuance rate based on the actual staking ratio relative to the target:
Below Target Staking: If the percentage of staked DYM is less than the target of 67%, the issuance rate will incrementally increase. This adjustment continues until it reaches the maximum rate of 10% or until the staking target is met.
At Target Staking: When the staking ratio aligns with the 67% target, the current issuance rate remains unchanged.
Above Target Staking: If the percentage of staked DYM is greater than the target of 67%, the issuance rate will incrementally decrease. This adjustment continues until it reaches the minimum rate of 1% or until the staking target is met.
Rate of Change Formula
The rate at which the DYM issuance adapts over the year is quantified.
Example
Current Staked Ratio: 100% (i.e., total supply of DYM is staked)
Staking Target: 67%
Inflation Rate of Change: 100%
The result of 100% staked DYM is a 49% reduction in the inflation rate over the year.
dymension
LearnDymensionDYMDemand
On this page
Monetary Policy
DYM Demand
Dymension aims to achieve a long-term sustainable equilibrium between supply (i.e token circulation and issuance) and demand (i.e utility and value accrual). The demand side of Dymension is driven by three value accrual mechanisms:
Burn: DYM tokens are systematically burned as part of validating bridging fee and protocol swap fees.
Transaction Fees: All fees generated from blockspace demand are distributed amongst DYM validators and their stakers.
Supply Lockup: RollApp bonds reduce the circulating supply of DYM, enhancing the network's security and stability.
Validating Bridge Fee
Processing withdrawals from RollApps (i.e. settling) is a critical function validated by Dymension. This process incurs a Validating Bridge Fee which is a parameter adjustable through onchain governance. Fees collected through this process are converted into DYM tokens and subsequently burned.
Example
Consider a scenario in which the fee parameter is set at 0.1%. A user withdrawing 1000 USDC from a RollApp would incur a fee of 1 USDC. This amount is then converted into DYM using the embedded Dymension AMM and burned.
Protocol Swap Fees
Dymension's embedded AMM facilitates asset routing, swapping, and pricing. Dymension charges a Protocol Swap Fee on all swaps. This fee follows the same path as the Validating Bridge Fees — being converted into DYM and burned.
Fee Structure
LP Swap Fees: Set as a global parameter for all liquidity pools at 0.20%, providing a source of revenue for liquidity providers (LPs).
Protocol Swap Fees: Set as a global parameter for all liquidity pools at 0.10%, reducing the supply of DYM.
RollApp Bonds
RollApp Sequencers are required to stake DYM (or the RollApp/DYM LP token) as a bond for proposing state updates. Minimum bond requirements for sequencers are dynamically determined onchain by the Total Value Bridged (i.e. IBC bridge on Dymension) to the RollApp.
In a multi-sequencer RollApp the size of the bond a sequencer posts determines their allocated block production time relative to other sequencers.
dymension
LearnDymensionDYMGrowth
On this page
Monetary Policy
Stimulating Growth
Dymension utilizes an onchain DAO (i.e. incentives manager) to distribute DYM and stimulate growth. The incentives manager streams protocol owned DYM to the following categories:
RollApp Credit Streams
Dymension's governance, or third parties, can decide to distribute tokens to RollApp Sequencers based on the Total Value Bridged to the RollApp (i.e. net IBC bridged inflows).
Example
Dymension distributes 1,000,000 DYM over three months to RollApp sequencers based on the relative amount of value bridged to the RollApp (determined onchain by IBC channels).
DA networks may choose to stream tokens to Sequencers that utilize their network for data publication.
Rolldrop Seasons
Dymension will initiate Rolldrop Seasons crafted to provide ongoing incentivizes for user engagement and exploration of RollApps. Tokens will be dispensed to users who engage in specific activities within the ecosystem.
AMM Incentives
Dymension governance distributes DYM rewards to users that lock up their liquidity pool shares. These shares are immediatley unlockable at anytime.
*Dymension will implement vote-escrowed DYM to automatically distribute DYM rewards to liquidity providers and RollApp Credit Streams based on DYM-weighted votes.