Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.monolith.market/llms.txt

Use this file to discover all available pages before exploring further.

Monolith consists of a small set of singleton contracts per chain, plus per-instance Lender, Coin, and Vault contracts deployed by the Factory.

Singletons

Ethereum Mainnet

Sepolia Testnet

Discovering per-instance contracts

Each stablecoin instance consists of three contracts deployed by Factory.deploy(DeployParams):
  • Lender — core lending contract for the instance
  • Coin — ERC‑20 stablecoin for the instance
  • Vault — ERC‑4626 staked vault for the instance
Enumerate existing instances by reading the Factory:
uint256 count = factory.deploymentsLength();
address lender = factory.deployments(i);      // i < count
address coin   = address(Lender(lender).coin());
address vault  = address(Lender(lender).vault());
Or index the Deployed(address indexed lender, address indexed coin, address indexed vault) event emitted by the Factory on each deploy() call.

Interest model

A single InterestModel instance is deployed per chain by the Factory constructor. Read its address from the Factory:
address interestModel = factory.interestModel();

Source code

All contracts are open source at github.com/MonolithMarket/Monolith.