Skip to content

kkrt-labs/cairo-mobile

Repository files navigation

Cairo M for Mobile

A React Native app using Expo using Cairo M to generate zero-knowledge proofs on mobile.

Development

Requirements

Setup

  1. Setup Rust
# Android
rustup target add aarch64-linux-android
cargo install cargo-ndk

# iOS
rustup target add aarch64-apple-ios
rustup target add aarch64-apple-ios-sim
  1. Clone the repository
git clone https://github.com/kkrt-labs/cairo-mobile.git
cd cairo-mobile
  1. Install dependencies
npm install
  1. Prebuild the native Android & iOS directories
npx expo prebuild --clean
  1. Generate Native Bindings: This step compiles the Rust code in cairo-m/ and prepares the native modules (cairo-m-bindings). ⚠️ Running npm run generate-bindings will generate ios bindings simulator, not for device. For ios devices, run node scripts/setup_rust_bindings.mjs --ios-device

    npm run generate-bindings
    # or specifically:
    # node scripts/setup_rust_bindings.mjs --all

    You'll need to re-run this command whenever you make changes to the Rust code in cairo-m/ folder.

  2. Run the app

  • Android: Run on Android device if connected, fallbacks to Android Simulator
    npx expo run:android
  • iOS
    npx expo run:ios # Run on iOS Simulator
    npx expo run:ios --device # Run on iOS device

About

Client-side proving on mobile, with Cairo M

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •