*Snapps are now zkApps – learn more about the update in this blog
The ZK Hack zkApps Workshop and the zkApps Bootcamp co-hosted by Mina Foundation and Mina ecosystem partner O(1) Labs have successfully concluded as of last week. These two events were the first opportunities for the Mina community to learn about and try out o1js (formerly SnarkyJS), a TypeScript library to write zero-knowledge smart contracts for Mina. Mina Foundation and O(1) Labs were happy to learn that the zkApps Workshop, hosted in partnership with ZK Hack, received the largest turnout out of all seven workshops in the series. Participation in the 4-day zkApps Bootcamp was intentionally capped to provide a better experience for attendees, and we received overwhelming interest (over 400 applications), ultimately hosting developers from over 20 different countries.
Overall, we saw a lot of enthusiasm and skills from attendees of both events, and o1js (formerly SnarkyJS) also received positive feedback from participants. For instance, we heard from a bootcamp participant:
“It’s far and away the easiest ZK thing I have used…o1js (formerly SnarkyJS) is way more fun to write in than Circom.”
– HelloWorld!#3362
The O(1) Labs team also gained some helpful insights and feedback from the sessions. One example of this is that there are a few JavaScript language constructs that can’t be used inside a circuit when writing a ZK-based smart contract (e.g. native ternaries & conditionals), and the o1js (formerly SnarkyJS) version of these must be used instead. O(1) plans to add custom ES Lint rules to provide real-time feedback to zkApp developers. O(1) Labs has also discussed and reviewed the feedback received throughout and after the bootcamp, and created various Github issues on O(1) Labs’ repos to improve zkApps. With so much enthusiasm from developers to build zkApps, Mina is on its way to be the first layer one protocol with zero-knowledge smart contracts!
If you were unable to attend, you can still watch a recording of the workshop, and bootcamp intro & project explanation and closing presentations.
zkApps Project Highlights
During the zkApps Bootcamp, O(1) Labs engineers walked through the high level architecture of zkApps, how to write smart contracts using o1js (formerly SnarkyJS), and developer participants were asked to write a game using o1js (formerly SnarkyJS). In addition to the intro session, participants also had the chance to join several informal office hour calls with O(1) Labs to ask questions, discuss their projects, and exchange tips and tricks with one another. By the end of the 4 days, many interesting games/projects were submitted. Here are just a few of them:
- Stir with JarofPickles by Karol#4597
- Sealed Bid Auction by maltabba#4003
- Bulls and Cows by Pete | grid0.xyz#1910
- zkApp DogNet by Makalore#7996
- zkApps Hangman by TauLepton#7102
Other zkApps developed during the bootcamp can be found on this community-created zkApps directory. Those who continue to build zkApps are encouraged to add their creations to the directory!
zkApps Builders Program
Supporting the growth of Mina’s ecosystem is a key priority, and the zkApps Builders Program was created to foster developer interest and contributions to zkApps. Those selected for the zkApps Builders Program will get hands-on support and resources over the course of several months to develop and launch their own Mina zkApps application. Recipients will receive $10K in MINA tokens to support their work and contribute to improving the zkApps developer experience and documentation for future builders.
The Mina Foundation and O(1) Labs are excited to share that the following participants are selected to join the zkApps Builders Program:
- 45930#8225
- carbonara#5880
- Comdex#3801 & coldStar1993#6265
- HelloWorld!#3362
- jkimaba#3096
- Makalore#7996
- TauLepton#7102
- Trivo#0001
- vim#1368
Those who have been selected will receive emails with more details on next steps. We really appreciate everyone’s efforts and participation and cannot wait to continue growing zkApps with all of you.
What’s Next
The zkApps Developers Workshop and Bootcamp were important steps towards the first easy programmable zero knowledge dapps. The immediate next focus will be to implement learnings from feedback from the events to create better zkApps documentation & improve o1js (formerly SnarkyJS).
If you have any feedback on the zkApps Bootcamp, please feel free to leave it here.
Alongside opening zkApps testing to a wider community via a testnet in the new year, there will also be more similar events like this workshop and bootcamp to educate and support more developers building smart contracts on Mina.
We invite you to become more familiar with zkApps via these resources:
- zkApps Developer Documentation
- What are zkApps?
- Real-World Use Cases that Mina zkApps Enable
- 10 zkApps Use Cases
You can also join the developer community on the #zkapps-developers channel on Discord. If you’re a developer interested in programming with zero-knowledge smart contracts, subscribe to stay updated on future opportunities to interact with zkApps and o1js (formerly SnarkyJS)!