aztec_pxe/
lib.rs

1//! Embedded PXE (Private eXecution Environment) runtime for aztec-rs.
2//!
3//! This crate provides an in-process PXE implementation for Aztec v4.x,
4//! where PXE runs client-side. It implements
5//! the [`Pxe`](aztec_pxe_client::Pxe) trait using local stores and the
6//! Aztec node's `node_*` RPC methods.
7//!
8//! # Architecture
9//!
10//! ```text
11//! ┌─────────────────────────┐
12//! │  BaseWallet              │
13//! │  ┌───────────────────┐  │
14//! │  │ EmbeddedPxe        │  │
15//! │  │  - local stores    │  │
16//! │  │  - ACVM executor   │  │
17//! │  └──────────┬────────┘  │
18//! │             │            │
19//! │  ┌──────────▼─────────┐ │
20//! │  │ HttpNodeClient      │ │
21//! │  └────────────────────┘ │
22//! └─────────────────────────┘
23//! ```
24
25pub mod embedded_pxe;
26pub mod execution;
27pub mod kernel;
28pub mod stores;
29pub mod sync;
30
31pub use embedded_pxe::{EmbeddedPxe, EmbeddedPxeConfig};
32pub use kernel::{
33    BbPrivateKernelProver, BbProverConfig, ChonkProofWithPublicInputs, PrivateExecutionStep,
34    PrivateKernelExecutionProver, PrivateKernelOracle, PrivateKernelProver,
35    PrivateKernelSimulateOutput, SimulatedKernel,
36};
37pub use stores::kv::{InMemoryKvStore, KvStore};
38pub use stores::{
39    AnchorBlockStore, NoteStore, PrivateEventStore, RecipientTaggingStore, SenderTaggingStore,
40    SledKvStore,
41};
42pub use sync::{
43    BlockStateSynchronizer, BlockSyncConfig, ContractSyncService, EventService, LogService,
44    NoteService, PrivateEventFilterValidator,
45};