Welcome to the Aztec fundamentals course. This course will teach you everything you need to know, from scratch, to become an Aztec smart contract developer.
YOUTUBE LINK
Welcome to the repository for the Aztec Fundamentals Course!
This repository houses course resources and discussions for the course.
- Helpful Resources
- Course Prerequisites
- Deployment Steps
- Section 0: Welcome
- Section 1: What is Aztec?
- Section 2: Private Counter
- Section 3: Private Token
- Section 4: Well Done!
- Thank you
- Noir Discord (for developer help)
- Aztec Discord (for community)
- Aztec documentation
- Noir documentation
- Awesome Aztec
- Aztec starter repo
- Aztec Standards
- WHAT IS ALPHA
The code is also in this repository.
This course is targeted at intermediate Solidity developers. Of course, if this is not you, you can still take this course but you may not fully follow as there is some assumed knowledge including:
- What a blockchain is
- What a zero-knowledge proof is
- Merkle Trees
- Understand hash functions and how they can be used for commitments
- What a nullifier is
- How state works on Ethereum
- EVM smart contract development preferred
If you would prefer, you can watch the following courses (for free) on Cyfrin Updraft to get up to speed beforehand:
- Get an RPC endpoint
export NODE_URL=https://rpc.testnet.aztec-labs.com- Create but don't deploy a CLI wallet
aztec-wallet create-account -a main --register-only --node-url $NODE_URLNote the output
-
Get some fee juice on testnet from GregoJuice bridge
-
Deploy your account
aztec-wallet deploy-account accounts:main --payment method=fee_juice --node-url $NODE_URL- Deploy the contract e.g., token contract
aztec-wallet deploy --node-url $NODE_URL --from accounts:main --payment method=fee_juice --alias token private_token@Token --args accounts:main Token TOK 18- Interact with the contract
aztec-wallet send mint_to_public --node-url $NODE_URL --from accounts:main --payment method=fee_juice --contract-address token --args accounts:main 100- Simulate to read state
aztec-wallet simulate balance_of_public --node-url $NODE_URL --from accounts:main --contract-address token --args accounts:mainThis section is just a welcome to the course
- Meet the instructor
- What you will learn
- What are the prerequisites
What is Aztec and how does it work?
Build a private counter smart contract. Code
Build a private token smart contract. Code
Correction: In this course we did not cover private events. To learn how to emit private events, visit the events and logs documentation.
Well done:)
Send a Tweet/post to let us know you completed the course!!
I just wanted to say a massive thank you to the following people:
- The entire Aztec team for making this possible (namely Nico, Grego, Jan, Maddiaa, Niall and Alejo for answering millions of questions)
- Jess for her help with editing (she is awesome)
- Patrick Collins for supporting me in creating long form content (the structure is inspired by courses from Cyfrin Updraft)
- Josh: devrel at Aztec for his fab AI resources and docs
- The Wonderland team for their learning resources and codebase I modified :)