Overview
The 0x Exchange implements a delegate-call proxy pattern to create a system of composable smart contracts. This architecture enables 0x to innovate with minimal friction alongside the growing DeFi ecosystem.
The diagram below illustrates our system (click to enlarge).

The table below defines our smart contract nomenclature.
Term |
Definition |
The point of entry into the system. This contract delegate-calls into Features. |
|
These contracts implement the core feature set of the 0x Protocol. They are trusted with user allowances and permissioned by the 0x Governor. |
|
These contracts extend the core protocol. They are trustless and permissioned by the Transformer Deployer. |
|
The Flash Wallet is a sandboxed escrow contract that holds funds for Transformers to operate on. For example, the |
|
Users set their allowances on this contract. It is scheduled to be deprecated after the official V4 release in January, 2021. After which point allowances will be set directly on the Proxy. |
|
A MultiSig that governs trusted contracts in the system: Proxy, Features, Flash Wallet. |
|
Deploys Transformers. A transformer is authenticated using a nonce of the Transformer Deployer. |
|
Protocol fees are paid into these contracts at time-of-fill. |
|
PLP liquidity providers are called from this sandbox. |