Files
self/app
2024-01-17 13:54:39 +01:00
..
2023-07-25 20:01:14 +02:00
2023-07-25 20:01:14 +02:00
2024-01-15 18:33:36 +01:00
2024-01-15 18:23:45 +01:00
2024-01-17 13:47:12 +01:00
2023-08-24 11:46:46 +02:00
2023-07-25 20:01:14 +02:00
2023-12-30 02:58:50 +01:00
2023-07-25 20:01:14 +02:00
2024-01-17 13:54:39 +01:00
2023-11-07 19:33:54 +03:00
2023-07-25 20:01:14 +02:00
2023-07-25 20:01:14 +02:00
2023-07-25 20:01:14 +02:00
2023-07-25 20:01:14 +02:00
2024-01-15 18:33:36 +01:00
2023-07-25 20:01:14 +02:00

Proof of Passport App

Requirements

Install nodejs v18, circom and snarkjs For android, install java and the android sdk For ios, install cocoapods

Installation

yarn

In /common, also run:

yarn

Build the app

Go to the circuit folder of the monorepo and build the circuit.

Build the android native module

Run:

./scripts/build_android_module.sh

You might need to set the rust-toolchain rust version as global default. Example:

rustup default 1.67.0

This you modify the circuits, you might have to modify ark-circom-passport/src/passport.rs too.

Build the iOS native module

Run:

./scripts/build_ios_module.sh

Now:

cd ios
pod install
./post_install.sh
cd ..

Run the app

To run the server, first connect your phone to your computer, allow access, then:

yarn start

Then press a for android or i for iOS

If you want to see the logs and have a better ios developer exprience, open /ios in Xcode and launch the app from there instead To see the android logs you'll have to use the Android Studio Logcat

To export an apk:

cd android
./gradlew assembleRelease

The built apk it located at android/app/build/outputs/apk/release/app-release.apk

Download zkey

If you want to mint a proof of passport SBT, run:

./scripts/download_current_zkey.sh

This will download the zkey currently deployed onchain in the proof of passport contract and place it in `circuits/build`` Then, build the android or iOS native module and run the app.