Modules
📄️ Introduction
Module Accounts
📄️ Epochs
Abstract
🗃️ GAMM
2 items
📄️ Gov
The `gov` module enables on-chain governance which allows Osmosis token holders to participate in a community led decision-making process. For example, users can:
📄️ Incentives
Abstract
📄️ Lockup
Abstract
📄️ Mint
The mint module is responsible for creating tokens in a flexible way to reward
📄️ Pool Incentives
Abstract
📄️ Superfluid Staking
Abstract
📄️ Token Factory
The tokenfactory module allows any account to create a new token with
📄️ TWAP
Time Weighted Average Price
📄️ Txfees
The txfees modules allows nodes to easily support many tokens for usage as txfees, while letting node operators only specify their tx fee parameters for a single "base" asset.
Module Accounts
All modules have their own module account. Think of this as a wallet that can only be controlled by that module. Here are a few with their respective wallet addresses and permissions:
Name | Address | Permissions |
---|---|---|
transfer | minter, burner | |
bonded_tokens_pool | burner, staking | |
not_bonded_tokens_pool | burner, staking | |
developer_vesting_unvested | minter | |
gov | burner | |
distribution | none | |
lockup | minter, burner | |
incentives | minter, burner | |
gamm | minter, burner | |
mint | minter, burner | |
claim | minter | |
poolincentives | none | |
fee_collector | none |
Module Flow
While module functions can be called in many different orders, here is a basic flow of module commands to bring assets onto Osmosis and then add/remove liquidity:
- (IBC-Transfer) IBC Received
- (GAMM) Swap Exact Amount In
- (GAMM) Join Pool
- (lockup) Lock-tokens
- (superfluid) Calculate and delegate synthetic Osmo
- (lockup) Begin-unlock-tokens
- (GAMM) Exit Pool