README
¶
Osmosis modules
Osmosis implements the following custom modules:
epochs
- Makes on-chain timers which other modules can execute code during.gamm
- Generalized AMM infrastructure, which includes balancer and stableswapincentives
- Controls specification and distribution of rewards to lockupslockup
- Enables time-lock escrowing of tokens. (Often called Locking or Bonding)mint
- Controls token supply emissions, and what modules they are directed to.pool-incentives
- Controls how incentives allocated towards "Liquidity Providing" are directed- These go towards gauges defined by the
incentives
module
- These go towards gauges defined by the
protorev
- Cyclic arbitrage module that redistributes backrunning profits to the protocolsuperfluid
- Defines superfluid staking, allowing DeFi assets to have their osmo-backing be staked.tokenfactory
- Allows minting of new tokens of the formfactory/{creator address}/{subdenom}
for user-defined subdenoms.twap
- The TWAP package is responsible for being able to serve TWAPs for every AMM pool.txfees
- Contains logic for whitelisting txfee tokens, making them easily priceable in osmo, and auto-swapping to osmo.- Also contains logic for custom Osmosis mempool logic, though this should perhaps relocate.
See the module dependence graph below for further information:
This is done in addition to updates to several modules within the SDK.
gov
- {Voting period changes}vesting
- {vesting changes}- Various binding & performance improvements to other modules
Directories
¶
Path | Synopsis |
---|---|
This file implements the poolmanagertypes.PoolModule interface
|
This file implements the poolmanagertypes.PoolModule interface |
client/queryproto
Package queryproto is a reverse proxy.
|
Package queryproto is a reverse proxy. |
cosmwasm/msg
This file defines helpers for querying the cosmwasm pool contract from the cosmwasm pool module.
|
This file defines helpers for querying the cosmwasm pool contract from the cosmwasm pool module. |
client/queryproto
Package queryproto is a reverse proxy.
|
Package queryproto is a reverse proxy. |
pool-models/balancer
Package balancer implements weighted constant product AMMs, satisfying the AMM pool interface from x/gamm/types.
|
Package balancer implements weighted constant product AMMs, satisfying the AMM pool interface from x/gamm/types. |
types
Package types is a reverse proxy.
|
Package types is a reverse proxy. |
v2types
Package v2types is a reverse proxy.
|
Package v2types is a reverse proxy. |
client/queryproto
Package queryproto is a reverse proxy.
|
Package queryproto is a reverse proxy. |
Incentives module provides general interface to give yield to stakers.
|
Incentives module provides general interface to give yield to stakers. |
types
Package types is a reverse proxy.
|
Package types is a reverse proxy. |
types
Package types is a reverse proxy.
|
Package types is a reverse proxy. |
The `mint` module is responsible for creating tokens in a flexible way to reward validators, incentivize providing pool liquidity, provide funds for Osmosis governance, and pay developers to maintain and improve Osmosis.
|
The `mint` module is responsible for creating tokens in a flexible way to reward validators, incentivize providing pool liquidity, provide funds for Osmosis governance, and pay developers to maintain and improve Osmosis. |
types
Package types is a reverse proxy.
|
Package types is a reverse proxy. |
The `pool-incentives` module automatically creates individual gauges in the `incentives` module for every lock duration that exists in that pool.
|
The `pool-incentives` module automatically creates individual gauges in the `incentives` module for every lock duration that exists in that pool. |
types
Package types is a reverse proxy.
|
Package types is a reverse proxy. |
client/queryproto
Package queryproto is a reverse proxy.
|
Package queryproto is a reverse proxy. |
client/queryprotov2
Package queryprotov2 is a reverse proxy.
|
Package queryprotov2 is a reverse proxy. |
types
Package types is a reverse proxy.
|
Package types is a reverse proxy. |
types
Package types is a reverse proxy.
|
Package types is a reverse proxy. |
The superfluid module handles all logic in relation to the superfluid staking feature on Osmosis.
|
The superfluid module handles all logic in relation to the superfluid staking feature on Osmosis. |
types
Package types is a reverse proxy.
|
Package types is a reverse proxy. |
The tokenfactory module allows any account to create a new token with the name `factory/{creator address}/{subdenom}`.
|
The tokenfactory module allows any account to create a new token with the name `factory/{creator address}/{subdenom}`. |
types
Package types is a reverse proxy.
|
Package types is a reverse proxy. |
client/queryproto
Package queryproto is a reverse proxy.
|
Package queryproto is a reverse proxy. |
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.
|
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. |
types
Package types is a reverse proxy.
|
Package types is a reverse proxy. |
client/queryproto
Package queryproto is a reverse proxy.
|
Package queryproto is a reverse proxy. |
Click to show internal directories.
Click to hide internal directories.