Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
38 commits
Select commit Hold shift + click to select a range
3633c56
init foundry project
JohnGuilding Nov 22, 2024
abe8604
forge install: openzeppelin-contracts
JohnGuilding Nov 22, 2024
84720dc
Add ZK Email soulbound NFT
JohnGuilding Nov 22, 2024
918ddad
Add natspec
JohnGuilding Nov 22, 2024
90e04dd
Test NFT is soulbound
JohnGuilding Nov 22, 2024
890fcaa
Update token uri:
JohnGuilding Nov 27, 2024
76e6842
Add access control
JohnGuilding Nov 27, 2024
eb2ed6b
chore: refactor
Bisht13 Nov 27, 2024
a8ebc9c
forge install: openzeppelin-contracts
Bisht13 Nov 27, 2024
4a72bb8
feat: get NFT contract working
Bisht13 Nov 27, 2024
b5ffcca
forge install: openzeppelin-contracts
Bisht13 Nov 27, 2024
bbfd634
fix: add missing ,
Bisht13 Nov 27, 2024
b8e3251
feat: NFT contract working e2e
Bisht13 Nov 29, 2024
af6592a
feat: structure contracts
Bisht13 Nov 29, 2024
17641ee
fix: code compiles and all tests pass
JohnGuilding Jan 22, 2025
081d0b5
test: remove duplicates & move tests to dedicated files
JohnGuilding Jan 22, 2025
8babda1
feat: verify then mint from verifier
JohnGuilding Jan 22, 2025
e3429b5
feat: combine proof into single trait
JohnGuilding Jan 22, 2025
4a2f81a
ci: update workflow to install deps and run tests
JohnGuilding Jan 22, 2025
5849073
ci: set working directory properly
JohnGuilding Jan 22, 2025
e21220e
ci: comment out formatting check
JohnGuilding Jan 22, 2025
251f4f6
ci: yarn install in /circom dir
JohnGuilding Jan 22, 2025
298d5a7
chore: fixme comment
JohnGuilding Jan 22, 2025
49779fa
feat: store svg onchain mvp
JohnGuilding Jan 27, 2025
9b49551
feat: decode public outputs into flattened json
JohnGuilding Jan 27, 2025
ccbdf01
refactor: update deploy script
JohnGuilding Jan 28, 2025
f9a72e9
fix: format decoded outputs json
JohnGuilding Feb 3, 2025
44581e8
feat: check owner is included in public outputs
JohnGuilding Feb 4, 2025
da101a5
refactor: remove removeVerifier fn
JohnGuilding Feb 4, 2025
75fb945
fix: fork tests & adjust json construction
JohnGuilding Feb 11, 2025
c2cb80a
test: add missing NFT unit tests
JohnGuilding Feb 11, 2025
51e6ab9
fix: add sepolia rpc url for CI tests
JohnGuilding Feb 11, 2025
ae8e725
refactor: move validate owner to verifier
JohnGuilding Feb 19, 2025
bb569c1
test: add TestVerifier tests
JohnGuilding Mar 6, 2025
14d85ef
chore: update .env.example rpc url
JohnGuilding Mar 7, 2025
6273b1b
chore: remove useless test
JohnGuilding Mar 7, 2025
e853fd2
fix: do not rollback fork
JohnGuilding Mar 7, 2025
4d31fd7
Merge remote-tracking branch 'origin/staging' into feat/add-proof-sou…
benceharomi Jun 2, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
68 changes: 68 additions & 0 deletions .github/workflows/test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@
name: CI

on:
push:
pull_request:
workflow_dispatch:

env:
FOUNDRY_PROFILE: ci

jobs:
check:
strategy:
fail-fast: true

name: Foundry project
runs-on: ubuntu-latest
defaults:
run:
working-directory: circom
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
submodules: recursive

- name: Install Foundry
uses: foundry-rs/foundry-toolchain@v1
with:
version: nightly

- name: "Install NodeJS"
uses: actions/setup-node@v4
with:
node-version: 18

- name: Run install
uses: borales/actions-yarn@v4
with:
cmd: install # will run `yarn install` command
dir: circom

- name: Copy .env
working-directory: circom
run: cp .env.example .env

- name: Show Forge version
run: |
forge --version

# TODO: configure formatting better
# - name: Run Forge fmt
# working-directory: circom
# run: |
# forge fmt --check
# id: fmt

- name: Run Forge build
working-directory: circom
run: |
forge build --sizes
id: build

- name: Run Forge tests
working-directory: circom
run: |
forge test -vvv
id: test
6 changes: 6 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
[submodule "circom/contracts/lib/forge-std"]
path = contracts/lib/forge-std
url = https://github.com/foundry-rs/forge-std
[submodule "contracts/lib/openzeppelin-contracts"]
path = circom/contracts/lib/openzeppelin-contracts
url = https://github.com/OpenZeppelin/openzeppelin-contracts
2 changes: 1 addition & 1 deletion Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 3 additions & 1 deletion circom/.env.example
Original file line number Diff line number Diff line change
@@ -1 +1,3 @@
PAYLOAD=
PAYLOAD=
BASE_SEPOLIA_RPC_URL=https://sepolia.base.org
SEPOLIA_RPC_URL=https://rpc.sepolia.ethpandaops.io
48 changes: 0 additions & 48 deletions circom/Deploy.s.sol

This file was deleted.

Loading