diff --git a/docs/docs/dev_docs/getting_started/quickstart.md b/docs/docs/dev_docs/getting_started/quickstart.md index 74c147d8729d..b1abbf5b75ec 100644 --- a/docs/docs/dev_docs/getting_started/quickstart.md +++ b/docs/docs/dev_docs/getting_started/quickstart.md @@ -32,6 +32,14 @@ With the help of Aztec.js you will be able to: This quickstart walks you through installing the Sandbox, deploying your first Noir contract, and verifying its execution! +## Sandbox Contents + +The sandbox contains a local ethereum instance running [Anvil](https://book.getfoundry.sh/anvil/), a local instance of the Aztec rollup, an aztec private execution client for handling user transactions and state, and, if using Docker, an [Otterscan](https://github.com/otterscan/otterscan) block explorer for the local ethereum network. + +These provide a self contained environment which deploys Aztec on a local (empty) ethereum network, creates 3 smart contract wallet accounts on the rollup, and allows transactions to be processed on the local Aztec sequencer. + +The current sandbox does not generate or verify proofs, but provides a working end to end developer flow for writing and interacting with Aztec.nr smart contracts. + ## Requirements - Node.js >= v18 (recommend installing with [nvm](https://github.com/nvm-sh/nvm)) @@ -57,7 +65,9 @@ To install a specific version of the sandbox, you can set the environment variab SANDBOX_VERSION= /bin/bash -c "$(curl -fsSL 'https://sandbox.aztec.network')" ``` -NOTE: If `SANDBOX_VERSION` is not defined, the script will pull the latest release of the sandbox. +NOTE: If `SANDBOX_VERSION` is not defined, the script will pull the latest release of the sandbox. The sandbox version should be the same as your `@aztec/cli` package to ensure compatibility. + +Once docker is up, you can see ethereum layer 1 activity through the local [otterscan](http://localhost:5100). This is especially useful for dapps that use L1-L2 messaging through [portal contracts](../contracts/portals/main.md). ### With npm diff --git a/yarn-project/aztec-sandbox/docker-compose.yml b/yarn-project/aztec-sandbox/docker-compose.yml index da0939bd0626..608c7db3d034 100644 --- a/yarn-project/aztec-sandbox/docker-compose.yml +++ b/yarn-project/aztec-sandbox/docker-compose.yml @@ -1,7 +1,7 @@ version: '3' services: ethereum: - image: ghcr.io/foundry-rs/foundry:v1.0.0 + image: ghcr.io/foundry-rs/foundry@sha256:29ba6e34379e79c342ec02d437beb7929c9e254261e8032b17e187be71a2609f command: '"anvil --silent -p 8545 --host 0.0.0.0 --chain-id 31337"' ports: - '${SANDBOX_ANVIL_PORT:-8545}:8545' @@ -24,3 +24,14 @@ services: ARCHIVER_VIEM_POLLING_INTERVAL_MS: 500 volumes: - ./log:/usr/src/yarn-project/aztec-sandbox/log:rw + + otterscan: + image: otterscan/otterscan:develop + # platform: linux/amd64 + ports: + - "5100:80" + container_name: otterscan + environment: + # otterscan env var is hardcoded to support erigon client + # but it also works for anvil + - ERIGON_URL=http://127.0.0.1:${SANDBOX_ANVIL_PORT:-8545} \ No newline at end of file