Building on the OP Stack with Avail
The OP Stack, instrumental for the development of L2 rollups and maintained by the Optimism Collective (opens in a new tab), is now extendable with Avail as an alternative data availability layer. Developers working with the OP Stack can utilize Avail to address data availability concerns, enhancing the stack's scalability while simultaneously cutting down data handling costs.
Transaction Lifecycle
-
Transaction Submission
- Process: Users send transactions to the Sequencer.
- Role: The Sequencer temporarily holds the transactions before they are batched.
-
Batch Processing
- Component:
op-batcher
- Function: Collects transactions into batches for more efficient processing.
- Component:
-
Data Availability with Avail
- Component:
op-plasma
- Function: Sidecar run alongside
op-batcher
. Sends the transaction batches to Avail's blockchain, ensuring data availability.
- Component:
-
Transaction Reference Creation
- Outcome: Avail returns a unique transaction reference to
op-avail
.
- Outcome: Avail returns a unique transaction reference to
-
Calldata Submission to Ethereum
- Component:
op-batcher
- Action: Submits the transaction reference from Avail as
calldata
to Ethereum.
- Component:
-
Verifier and Rollup Node Integration
- Component:
op-node
- Function: Queries data commitment from Ethereum and fetches L2 transaction data through
op-avail
, completing the data availability cycle for OP Stack transactions.
- Component:
Interoperability and Fault Proofing
The Avail OP Stack will evolve to integrate Optimism's fault proof system and the OP Stack sequencer's decentralization efforts. The Avail data root is posted to Ethereum through the Vector data attestation bridge, allowing for seamless verification of data availability consensus.
Developer Onboarding
Developers can start experimenting with the Avail OP Stack today by following the guide in the Avail OP Stack (opens in a new tab) repo. For support and updates, join the Avail Forum or Discord.