This project is a complete application that demonstrates a basic Semaphore use case. It comes with a sample contract, a test for that contract and a sample task that deploys that contract. It also contains a frontend to play around with the contract.
yarn
You can start your app locally with:
yarn dev
- Go to the
apps/contracts
directory and deploy your contract:
yarn deploy --semaphore <semaphore-address> --group <group-id> --network arbitrum-sepolia
-
Update your
.env
file with your new contract address, the group id and the semaphore contract address. -
Copy your contract artifacts from
apps/contracts/artifacts/contracts/
folder toapps/web-app/contract-artifacts
folder manually.
Note
Check the Semaphore contract addresses here.
Warning
The group id is a number!
Run ESLint and solhint to analyze the code and catch bugs:
yarn lint
Run Prettier to check formatting rules:
yarn prettier
Or to automatically format the code:
yarn prettier:write