veilocity_prover/lib.rs
1//! Veilocity Prover
2//!
3//! Witness generation and proof creation using Noir/Barretenberg.
4//!
5//! This crate provides:
6//! - Witness generation for deposit, withdrawal, and transfer circuits
7//! - Proof generation using Barretenberg (`bb` CLI)
8//! - Proof verification
9//! - Solidity verifier generation
10//!
11//! # Usage
12//!
13//! ```ignore
14//! use veilocity_prover::{NoirProver, DepositWitness};
15//!
16//! let prover = NoirProver::default_paths();
17//!
18//! // Create witness
19//! let witness = DepositWitness::new(commitment, amount, secret);
20//!
21//! // Generate proof
22//! let proof = prover.prove_deposit(&witness).await?;
23//! ```
24
25pub mod error;
26pub mod prover;
27pub mod witness;
28
29pub use error::ProverError;
30pub use prover::{CircuitType, NoirProver, Proof};
31pub use witness::{DepositWitness, FullTransferWitness, TransferWitness, WithdrawWitness, TREE_DEPTH};