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};