Berkeley Testnet WIP: zkApp – Canvas

This canvas is a WIP, ZK App built with snarkyJS designed to test interactivity with the Berkeley QA Net. Users can toggle pixels on and off, then the app commits the state of the canvas to Mina.

What does it do?
The canvas is a shared mina contract state represented visually. It is a 32×32 matrix of boolean values representing whether a pixel should be colored or not. The matrix is hashed and committed to the blockchain on request which allows everyone to confirm that the canvas they load when they access the webpage is the same canvas that has been committed to the Mina chain.

For now, there are no permissions or proofs required to update the state. You could update the state of the contract without knowing the state right now, which means that you don’t even need the website. In the future, I’d like to add additional features to the app which require different proofs/signatures, and makes it so that knowing the state of the canvas is actually important for updating its state.

Even without any “useful” features, the canvas stands as an example of how to read and write data to the mina blockchain from a web app, and of how to deploy such an app so that it is accessible to the world.

Deployed at canvas-zk-app.vercel.app
Click here to visit the GitHub page >

 

zkApp. zkapp0014 Category: Tags: ,