Aztec is a package that allows for a simple development environment on Aztec stack. It creates a Private eXecution Environment (PXE) that listens for HTTP requests on localhost:8080 by default. When started, it deploys all necessary L1 Aztec contracts and then starts listening for RPC requests.
The easiest way to run is by using docker compose up. This will create two containers:
- The sandbox listening on port
8080 - An anvil instance listening on port
8545
You can also run it as a standalone node server with:
yarn startIt will look for a local Ethereum RPC to talk to but you can change this with the ETHEREUM_HOSTS environment variable.
The package also includes 2 examples. There are some system prerequisites that you will need to run these locally:
Before running locally you'll need to:
- Head to
l1-contractsdirectory and run./bootstrap.sh - Then go to `yarn-project and run:
yarn installyarn buildAnd you should be good to go!
From the aztec directory, you can run the two existing examples:
- Deployment, mint and transfer on an Aztec Private Token
yarn run:example:token
- An L1 / L2 uniswap token trade.
yarn run:example:uniswap- To run this example, you need to set the following vars:
export FORK_BLOCK_NUMBER=17514288
export FORK_URL=<YOUR_RPC_URL e.g. https://mainnet.infura.io/v3/API_KEY>
This package is set-up to be published on dockerhub by CI whenever there's a tagged release on master branch.
It's published under the tags aztecprotocol/aztec:latest & aztecprotocol/aztec:<version-tag>.