Request form
Moonwell
  • Lending
  • Borrowing
  • Audited
Docs
Source
ChefGPT

Moonwell is an open and decentralized lending and borrowing protocol built on Base, Moonbeam, and Moonriver. The app's intuitive design ensures a streamlined user experience, enabling everyone to do more with their digital assets.

test.sol
Base.sol
console.sol
console2.sol
IMulticall3.sol
safeconsole.sol
Script.sol
StdAssertions.sol
StdChains.sol
StdCheats.sol
StdError.sol
StdInvariant.sol
StdJson.sol
StdMath.sol
StdStorage.sol
StdStyle.sol
StdUtils.sol
Test.sol
Vm.sol
Ownable.sol
draft-IERC1822.sol
IERC1967.sol
IERC5267.sol
IBeacon.sol
ERC1967Proxy.sol
ERC1967Upgrade.sol
Proxy.sol
ProxyAdmin.sol
TransparentUpgradeableProxy.sol
Initializable.sol
Pausable.sol
ReentrancyGuard.sol
ERC20.sol
draft-ERC20Permit.sol
ERC20Burnable.sol
ERC20Permit.sol
IERC20Metadata.sol
IERC20Permit.sol
IERC20.sol
SafeERC20.sol
Address.sol
Context.sol
Counters.sol
ECDSA.sol
EIP712.sol
Math.sol
SafeCast.sol
SignedMath.sol
ShortStrings.sol
StorageSlot.sol
Strings.sol
EnumerableSet.sol
ERC4626.sol
ERC20.sol
FixedPointMathLib.sol
SafeTransferLib.sol
4626Deploy.sol
CompoundERC4626.sol
LibCompound.sol
CarefulMath.sol
Comptroller.sol
ComptrollerInterface.sol
ComptrollerStorage.sol
EIP20Interface.sol
EIP20NonStandardInterface.sol
ErrorReporter.sol
Exponential.sol
ExponentialNoError.sol
MoonwellArtemisGovernor.sol
Timelock.sol
Well.sol
IERC20.sol
ITemporalGovernor.sol
IWormhole.sol
TemporalGovernor.sol
Well.sol
InterestRateModel.sol
JumpRateModel.sol
WhitePaperInterestRateModel.sol
MErc20.sol
MErc20Delegate.sol
MErc20Delegator.sol
MLikeDelegate.sol
MToken.sol
MTokenInterfaces.sol
IMultiRewardDistributor.sol
MultiRewardDistributor.sol
MultiRewardDistributorCommon.sol
MWethDelegate.sol
AggregatorV3Interface.sol
ChainlinkCompositeOracle.sol
ChainlinkOracle.sol
PriceOracle.sol
Addresses.sol
Configs.sol
Deploy4626Vaults.s.sol
DeployCompositeOracle.s.sol
DeployFaucetToken.s.sol
DeployJRM.s.sol
DeployWETHRouter.s.sol
DeployWethUnwrapper.s.sol
MarketCreationHook.sol
MIPProposal.s.sol
mip-market-listing.sol
mip01.sol
mip02.sol
mip-b00.sol
mip-b01.sol
mip-b02.sol
mip-b03.sol
mip-b05.sol
mip-b06.sol
mip-b07.sol
mip-b08.sol
mip-b09.sol
mip-b10.sol
mip-b11.sol
mip-b12.sol
mip-t01.sol
CrossChainJSONProposal.sol
CrossChainProposal.sol
IProposal.sol
ITimelockController.sol
MultisigProposal.sol
Proposal.sol
TimelockProposal.sol
TestProposals.sol
CreateCode.sol
ParameterValidation.sol
StringUtils.sol
Recovery.sol
IWETH.sol
WETHRouter.sol
SafeMath.sol
Unitroller.sol
BaseMoonwellViews.sol
ComptrollerInterfaceV1.sol
MoonwellViewsV1.sol
MoonwellViewsV2.sol
SafetyModuleInterfaceV1.sol
TokenSaleDistributorInterfaceV1.sol
UniswapV2PairInterface.sol
WethUnwrapper.sol
FaucetToken.sol
MockChainlinkOracle.sol
MockERC20.sol
MockWeth.sol
MockWormholeCore.sol
ChainIds.sol

TVL

$108.36M

Chains

Authors

Moonwell
  • Lending
  • Borrowing
  • Audited
Info
Source
ChefGPT
Expand
Share

Get Cookin'

Chains

Authors

Moonwell Protocol v2

The Moonwell Protocol is a fork of Compound v2 with features like borrow/supply caps, cross-chain governance, and multi-token emissions.

The "v2" release of the Moonwell Protocol is a major system upgrade to use solidity 0.8.17, add supply caps, and a number of improvements for user experience (things like mintWithPermit and claimAllRewards). Solidity version 0.8.20 was not used because EIP-3855 which adds the PUSH0 opcode will not be live on base where this system will be deployed.

Running + Development

Development will work with the latest version of foundry installed.

Basic development workflow:

  • use forge build to build the smart contracts
  • use forge test -vvv --match-contract UnitTest to run the unit tests
  • use forge test --match-contract IntegrationTest --fork-url $ETH_RPC_URL to run the integration tests
  • use forge test --match-contract ArbitrumTest --fork-url $ARB_RPC_URL to run the ChainlinkCompositeOracle tests
  • use forge test --match-contract LiveSystemTest --fork-url baseGoerli to run the base goerli live system tests
  • use forge script src/proposals/DeployProposal.s.sol:DeployProposal -vvvv --rpc-url $ETH_RPC_URL to do a dry run of the deployment script
Moonwell is an open and decentralized lending and borrowing protocol built on Base, Moonbeam, and Moonriver. The app's intuitive design ensures a streamlined user experience, enabling everyone to do more with their digital assets.
test.sol
Base.sol
console.sol
console2.sol
IMulticall3.sol
safeconsole.sol
Script.sol
StdAssertions.sol
StdChains.sol
StdCheats.sol
StdError.sol
StdInvariant.sol
StdJson.sol
StdMath.sol
StdStorage.sol
StdStyle.sol
StdUtils.sol
Test.sol
Vm.sol
Ownable.sol
draft-IERC1822.sol
IERC1967.sol
IERC5267.sol
IBeacon.sol
ERC1967Proxy.sol
ERC1967Upgrade.sol
Proxy.sol
ProxyAdmin.sol
TransparentUpgradeableProxy.sol
Initializable.sol
Pausable.sol
ReentrancyGuard.sol
ERC20.sol
draft-ERC20Permit.sol
ERC20Burnable.sol
ERC20Permit.sol
IERC20Metadata.sol
IERC20Permit.sol
IERC20.sol
SafeERC20.sol
Address.sol
Context.sol
Counters.sol
ECDSA.sol
EIP712.sol
Math.sol
SafeCast.sol
SignedMath.sol
ShortStrings.sol
StorageSlot.sol
Strings.sol
EnumerableSet.sol
ERC4626.sol
ERC20.sol
FixedPointMathLib.sol
SafeTransferLib.sol
4626Deploy.sol
CompoundERC4626.sol
LibCompound.sol
CarefulMath.sol
Comptroller.sol
ComptrollerInterface.sol
ComptrollerStorage.sol
EIP20Interface.sol
EIP20NonStandardInterface.sol
ErrorReporter.sol
Exponential.sol
ExponentialNoError.sol
MoonwellArtemisGovernor.sol
Timelock.sol
Well.sol
IERC20.sol
ITemporalGovernor.sol
IWormhole.sol
TemporalGovernor.sol
Well.sol
InterestRateModel.sol
JumpRateModel.sol
WhitePaperInterestRateModel.sol
MErc20.sol
MErc20Delegate.sol
MErc20Delegator.sol
MLikeDelegate.sol
MToken.sol
MTokenInterfaces.sol
IMultiRewardDistributor.sol
MultiRewardDistributor.sol
MultiRewardDistributorCommon.sol
MWethDelegate.sol
AggregatorV3Interface.sol
ChainlinkCompositeOracle.sol
ChainlinkOracle.sol
PriceOracle.sol
Addresses.sol
Configs.sol
Deploy4626Vaults.s.sol
DeployCompositeOracle.s.sol
DeployFaucetToken.s.sol
DeployJRM.s.sol
DeployWETHRouter.s.sol
DeployWethUnwrapper.s.sol
MarketCreationHook.sol
MIPProposal.s.sol
mip-market-listing.sol
mip01.sol
mip02.sol
mip-b00.sol
mip-b01.sol
mip-b02.sol
mip-b03.sol
mip-b05.sol
mip-b06.sol
mip-b07.sol
mip-b08.sol
mip-b09.sol
mip-b10.sol
mip-b11.sol
mip-b12.sol
mip-t01.sol
CrossChainJSONProposal.sol
CrossChainProposal.sol
IProposal.sol
ITimelockController.sol
MultisigProposal.sol
Proposal.sol
TimelockProposal.sol
TestProposals.sol
CreateCode.sol
ParameterValidation.sol
StringUtils.sol
Recovery.sol
IWETH.sol
WETHRouter.sol
SafeMath.sol
Unitroller.sol
BaseMoonwellViews.sol
ComptrollerInterfaceV1.sol
MoonwellViewsV1.sol
MoonwellViewsV2.sol
SafetyModuleInterfaceV1.sol
TokenSaleDistributorInterfaceV1.sol
UniswapV2PairInterface.sol
WethUnwrapper.sol
FaucetToken.sol
MockChainlinkOracle.sol
MockERC20.sol
MockWeth.sol
MockWormholeCore.sol
ChainIds.sol