githubEdit

Introduction

Beanstalk is a permissionless fiat stablecoin protocol built on Arbitrum.

Beanstalk forms the monetary basis of an Arbitrum-native, rent-free economy facilitated by the seigniorage of its native fiat currency, a stablecoin called Bean.

Beanstalk's primary objective is to incentivize independent market participants to regularly cross the price of 1 Bean across its value peg of $1 in a sustainable fashion. The stability of the Bean price relative to its value peg is a function of the creditworthiness of Beanstalk—Beanstalk attracts lenders when the price of a Bean is below its value peg to remove Beans from the supply and increase their price.

When the Bean price is too high, Beanstalk mints new Beans and distributes them to various ecosystem participants in a deterministic fashion. This inflation is the positive carryarrow-up-right that the Beanstalk economy is based on.

Beanstalk implements several novel mechanisms including a first-in-first-out (FIFO) debt modelarrow-up-right supplemented by an on-chain order bookarrow-up-right, a time-weighted staking structurearrow-up-right that increases the opportunity cost of withdrawing the longer an asset stays deposited in the DAO and a convert mechanismarrow-up-right that allows participants to perform peg maintenance while those assets are staked.

Beanstalk strives to create product market fit on both a technical and economic level. In order to service an entire ecosystem, Beanstalk needs to provide a cheap, composable and interoperable interface. However, as protocols become more sophisticated and blockspace more crowded, smart contract architecture complexity can quickly become overwhelming.

Beanstalk pioneers a path forward for devising more efficient and complex systems. Beanstalk is implemented in Solidity v0.8.20arrow-up-right for intended use in the EVMarrow-up-right. Beanstalk leverages EIP-2535arrow-up-right to minimize gas costs and complexity.

Beanstalk consists of 2 main contracts:

Contracts

Beanstalk is deployed at 0xD1A0060ba708BC4BCD3DA6C37EFa8deDF015FB70arrow-up-right.

Bean is deployed at 0xBEA0005B8599265D41256905A9B3073D397812E4arrow-up-right.

All relevant contract addresses can be found on the Contractsarrow-up-right page of the Farmers' Almanacarrow-up-right.

Last updated