/zk-workshop

Primary LanguageTypeScriptGNU General Public License v3.0GPL-3.0

Developing ZK Circuits with Circom

Pre requisites

Getting started

  1. Clone or fork this template repository.
    git clone https://github.com/ekrembal/zk-workshop
  2. Install packages
    yarn
  3. Build: this compiles the circuits and exports artifacts. Then compiles the contracts and generate typescript clients.
    yarn build
  4. Enter your private key in contracts/.env file.
    GOERLI_URL=https://goerli.infura.io/v3/9aa3d95b3bc440fa88ea12eaa4456161
    PRIVATE_KEY=0xabc123abc123abc123abc123abc123abc123abc123abc123abc123abc123abc1
  5. Deploy the contracts
    yarn workspace contracts hardhat run --network goerli scripts/deploy.ts
  6. Interact with the frontend from https://zk.ekrembal.com

Run tests

  1. Test contracts

    yarn workspace contracts test
  2. Test your circuits

    yarn workspace circuits test
  3. Test your app

    yarn workspace app test