Skip to content

AztecProtocol/aztec-packages

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Aztec Monorepo

All the packages that make up Aztec.

  • barretenberg: The ZK prover backend that provides succinct verifiability for Aztec. Also houses the Aztec VM.
  • l1-contracts: Solidity code for the Ethereum contracts that process rollups
  • noir-projects: Noir code for Aztec contracts and protocol circuits.
  • yarn-project: Typescript code for client and backend
  • docs: Documentation source for the docs site

Popular packages

  • Aztec.nr: A Noir framework for smart contracts on Aztec.
  • Aztec: A package for starting up local dev net modules, including a local 'sandbox' devnet, an Ethereum network, deployed rollup contracts and Aztec execution environment.
  • Aztec.js: A tool for interacting with the Aztec network. It communicates via the Private Execution Environment (PXE).
  • Example contracts: Example contracts for the Aztec network, written in Noir.
  • End to end tests: Integration tests written in Typescript--a good reference for how to use the packages for specific tasks.
  • Aztec Boxes: Example starter projects.

Issues Board

All issues being worked on are tracked on the Aztec Github Project. For a higher-level roadmap, check the milestones overview section of our website.

Debugging

Logging goes through the Logger module in Typescript. LOG_LEVEL controls the default log level, and one can set alternate levels for specific modules, such as debug; warn: module1, module2; error: module3.

Releases

Releases are driven by release-please, which maintains a 'Release PR' containing an updated CHANGELOG.md since the last release. Triggering a new release is simply a case of merging this PR to master. A github workflow will create the tagged release triggering ./bootstrap.sh release to build and deploy the version at that tag.

Contribute

There are many ways you can participate and help build high quality software. Check out the contribution guide!

Syncing noir

We use marker commits and git-subrepo (for a subset of its intended use) to manage a mirror of noir. This tool was chosen because it makes code checkout and development as simple as possible (compared to submodules or subtrees), with the tradeoff of complexity around sync's.

Development and CI

For a broad overview of the CI system take a look at CI.md.

For some deeper information on individual scripts etc (for developing CI itself), take a look at ci3/README.md.