This project is a zk-dApps template designed for use with Hardhat, an Ethereum development environment. It provides a starting point for building decentralized applications (dApps) with a focus on zero-knowledge proofs (zk-proofs).
- Smart contract development in Solidity
- Integration with Hardhat for Ethereum development
- Support for zk-proofs using Circom
- TypeScript and Shell scripts for seamless dApp development
- Clone the repository:
git clone https://github.com/vasemkin/zk-template.git
- Install dependencies:
pnpm install
- The pnpm installation should triger the preparation script. If this did not happen, run:
pnpm prepare
- Check that it works:
pnpm test
- Write your circuits in
circuits/
folder - Modify the build script
shell/prepare.sh
- Modify the
src/zk.ts
utilties according to your public signals
Utility functions are adapted from tornado and zk-merkle-tree repositories.