Making client-side proving on mobile simple.
This is a WIP.
mopro-core
- core mobile Rust library.mopro-ffi
- wrapsmopro-core
and exposes UniFFI bindings.mopro-ios
- iOS CocoaPod library exposing native Swift bindings.mopro-example-app
- example iOS app usingmopro-ios
.
The following illustration shows how mopro and its components fit together into the wider ZKP ecosystem:
Zooming in a bit:
- Install circom and snarkjs
- Install cocoapods
- Run
./scripts/prepare.sh
to check all prerequisites are set.
To build bindings for iOS simulator debug mode, run
./scripts/build_ios.sh simulator debug
Open the mopro-ios/MoproKit/Example/MoproKit.xcworkspace
in Xcode.
To update bindings, run ./scripts/update_bindings.sh simulator|device debug|release
.
simulator
is for building library to run on iOS simulator,device
is for running on a real devicedebug
is for Rust library to be in debug mode andrelease
for release mode
This work is sponsored by a joint grant from PSE and 0xPARC.