Skip to content

Commit

Permalink
feat(docs): add Sandbox PXE proving doc (#9815)
Browse files Browse the repository at this point in the history
Adds a doc with info about how to enable client side proving in the
sandbox.

closes AztecProtocol/dev-rel#442

---------

Co-authored-by: saleel <saleel@aztecprotocol.com>
  • Loading branch information
critesjosh and saleel authored Nov 7, 2024
1 parent 4660381 commit 9de9e4d
Showing 1 changed file with 38 additions and 0 deletions.
38 changes: 38 additions & 0 deletions docs/docs/guides/developer_guides/local_env/sandbox_proving.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
---
title: Sandbox PXE Proving
tags: [sandbox, PXE]
---

The Sandbox does not have client-side proving in the PXE enabled by default. This reduces testing times and increases development speed by allowing for rapid iteration.

You may want to enable client-side proving in the Sandbox to better understand how long it takes to execute Aztec transactions.

:::note

Running the sandbox with client-side proving is much slower and should only be used sparingly to analyze real proving times of executing private functions of a contract.

:::

## Config

To enable client-side proving, update the docker compose file found at `~/.aztec/docker-compose.sandbox.yml` and add the following configuration settings under the `aztec:environment` scope.

```yml
BB_BINARY_PATH: /usr/src/barretenberg/cpp/build/bin/bb
PXE_PROVER_ENABLED: 1
BB_WORKING_DIRECTORY: ~/bb-temp #any temp directory for writing circuit artifacts
```
## Usage
Once the `docker-compose.sandbox.yml` has been updated, restart the sandbox with:

```bash
aztec start --sandbox
```

The sandbox will take much longer to start. The first time it starts, it will need to download a large crs file, which can take several minutes even on a fast internet connection. This is a one-time operation, you will not need to download it again until you update to a new Aztec version.

The sandbox will also deploy 3 Schnorr account contracts on startup. The sandbox will need to generate transaction proofs for deployment, which will take additional time.

Once everything has been set up, you will see that the PXE is listening on `localhost:8080` as you would see with the sandbox running in the default mode. At this point you can use the sandbox as you would without client-side proving enabled.

0 comments on commit 9de9e4d

Please sign in to comment.