Skip to main content
Version: Testnet - Blumbus

Minting

RollApps come with minting functionality which enables the continued creation of tokens.

The initial inflation rate is set as a parameter on genesis as part of the genesis file. RollApp deployers decide on the intiial inflation rate, target inflation rate, and how long it takes to get from the current to the target rate.

RollApps automatically decrease the inflation rate linearly over time until it reaches the target inflation rate. Mint module calcualtes annual rewards (total supply * current_inflation) and then divides rewards by mint_epoch_identifier (e.g., divide by 365 for daily mint, by 12 for monthly).

Customizing Mint on Genesis

Example: Reduction every week for three years.

 "mint": {
"minter": {
"current_inflation_rate": "0.08"
},
"params": {
"mint_denom": "stake",
"mint_epoch_identifier": "minute",
"mint_start_epoch": "1",
"inflation_change_epoch_identifier": "week",
"inflation_rate_change": "0.000383",
"target_inflation_rate": "0.02"
}
},

current_inflation_rate

Initial inflation rate of the total supply.

mint_denom

The denomination of the token being minted by the RollApp (e.g.,"arollapp").

mint_epoch_identifier

The frequency tokens are created, can be set as minute, hour, day, week, or year. Note due to the compounding nature of minting tokens a mint_epoch_identifier with shorter timeframe will result in a greater supply of tokens than a longer timeframe.

For example, minute will result in a greater amount of tokens than week.

mint_start_epoch

The epoch number in which the minting begins. The epoch module begins at 1 as such 1 is the genesis block. This number can be set at a greater amount to begin minting new tokens at a later point in time.

inflation_change_epoch_identifier

The epoch trigger for reducing issuance, can be set as minute, hour, day, week, or year. This will determine how much time it takes to get to the target_inflation_rate.

inflation_rate_change

The amount by which the current inflation is reduced by every inflation_change_epoch_identifier. This will determine how much the current inflation rate will decrease by every inflation_change_epoch_identifier.

target_inflation_rate

This is the inflation rate that will continue after completing the targeted reduction (e.g., "target_inflation_rate": "0.02")

Initial inflation rate

Referred to as the current_inflation_rate on the genesis file. This sets the initial inflation rate which is a percentage of new tokens created from the total supply.

Inflation rate change

The amount by which the current inflation is reduced by every inflation_change_epoch_identifier. This will determine how much the current inflation rate will decrease.

Minimum inflation rate

This is the inflation rate that will continue after reducing by the inflation rate change (e.g., "target_inflation_rate": "0.02").