| Crates.io | kona-derive |
| lib.rs | kona-derive |
| version | 0.4.5 |
| created_at | 2024-02-22 20:38:47.339401+00 |
| updated_at | 2025-07-31 14:08:36.884247+00 |
| description | A no_std derivation pipeline implementation for the OP Stack |
| homepage | https://github.com/op-rs/kona |
| repository | https://github.com/op-rs/kona |
| max_upload_size | |
| id | 1149712 |
| size | 1,894,452 |
kona-deriveA no_std compatible implementation of the OP Stack's derivation pipeline.
The intended way of working with kona-derive is to use the DerivationPipeline which implements the Pipeline trait. To create an instance of the DerivationPipeline, it's recommended to use the PipelineBuilder as follows.
use std::sync::Arc;
use kona_genesis::RollupConfig;
use kona_derive::EthereumDataSource;
use kona_derive::PipelineBuilder;
use kona_derive::StatefulAttributesBuilder;
let chain_provider = todo!();
let l2_chain_provider = todo!();
let blob_provider = todo!();
let l1_origin = todo!();
let cfg = Arc::new(RollupConfig::default());
let attributes = StatefulAttributesBuilder::new(
cfg.clone(),
l2_chain_provider.clone(),
chain_provider.clone(),
);
let dap = EthereumDataSource::new(
chain_provider.clone(),
blob_provider,
cfg.as_ref()
);
// Construct a new derivation pipeline.
let pipeline = PipelineBuilder::new()
.rollup_config(cfg)
.dap_source(dap)
.l2_chain_provider(l2_chain_provider)
.chain_provider(chain_provider)
.builder(attributes)
.origin(l1_origin)
.build();
The most up-to-date feature list will be available on the docs.rs Feature Flags tab of the kona-derive crate.
Some features include the following.
serde: Serialization and Deserialization support for kona-derive types.test-utils: Test utilities for downstream libraries.By default, kona-derive enables the serde feature.