zkmopro / mopro

Making client-side proving on mobile simple.
https://zkmopro.org
Apache License 2.0
131 stars 35 forks source link

Cli for initializing a mopro project #235

Closed vivianjeng closed 2 months ago

vivianjeng commented 3 months ago

To get started, follow these steps:

  1. Navigate to your project directory: cd mopro-example-app

  2. Run the following commands to build and run the project: cargo run --bin ios cargo run --bin android

📚 To learn more about mopro, visit: https://zkmopro.org

Happy coding! 🚀



- `adapter` could be `circom`, `halo2`, or `circom,halo2`
cloudflare-workers-and-pages[bot] commented 3 months ago

Deploying mopro with  Cloudflare Pages  Cloudflare Pages

Latest commit: 550abd0
Status: ✅  Deploy successful!
Preview URL: https://51a95524.mopro.pages.dev
Branch Preview URL: https://cli.mopro.pages.dev

View logs

chancehudson commented 2 months ago

I'm still opposed to adding a cli for managing mopro. By doing so we're absorbing the complexity of cargo and replacing it with out own complexity mopro. This can be good in some situations, but i think in this case the gains are close enough to zero to make it not worth maintaining.

Basically, if people want to use mopro they'll do it with or without a cli. So IMO it only makes sense to improve the offering mopro itself (like adding react-native, more targets, etc).

That said, I'm not as involved in this project these days, and won't say no to a feature you think is correct. The implementation here looks good.

vivianjeng commented 2 months ago

My idea is like npx create-create-app it could be very simple (or at least we build a mopro circom example project) and people can just cd project and open a simulator to run a prover

but I just found that the we can still keep these steps (just too complex to do them in one step)

I think cli will be helpful for junior developers or for people who want to try new things and for advanced (circuits) developers we can still keep how to setup in the documentation

yes I agree it will take much effort to maintain if there is any change in mopro we can try to fix the version and make sure the cli works for every update (e.g. with a ci test) or every released version