By Jason Borseth & Regina Wong from O(1) Labs, Mina Ecosystem Partner
We’re pleased to announce the wrap up of the first cohort of the zkApps Builders Program–our program to support developers who want to learn about zero-knowledge smart-contract programming and build a zkApp for Mina Protocol.
In this initial cohort, 7 teams, consisting of 9 total participants from 4 countries finished the 12-week program.
These teams received a grant and direct access to the O(1) Labs team members building zkApps so we could support team efforts to build a zkApp-related project of their choosing, and the teams provided valuable feedback to help us improve o1js (formerly SnarkyJS) to be even more developer friendly.
“The zkApp builders program gave me the opportunity to interact with some of the smartest people who are working on zkStuff… o1js (formerly SnarkyJS) reminds me of a web framework–it exposes extremely powerful functionality in an intuitive way!”
–HelloWorld!#3362, zkApps Builder Cohort 1
Today, we’ll share more about the goals of the program, the projects built by this initial group of zkApp builders, and how you can participate in the next zkApps Builders Program.
About Mina’s zkApps Builders Program
Mina’s zkApps Builders Program is a 12-week, online program to support developers who are building zkApp-related projects. The goal of the program is to provide direct access to the O(1) Labs team to support developers as they build their zkApp project and for O(1) Labs to gather feedback for improving o1js (formerly SnarkyJS) and zkApps.
Participants could work on any zkApp-related project of their choosing, then met weekly as a group to discuss their project progress and to receive help and feedback from both other participants and O(1) Lab’s team–which included software engineers, developer relations engineers, and product managers.
In a concentrated amount of time, the builders in the program learned the inner workings of o1js (formerly SnarkyJS) and zkApps, provided valuable feedback to improve o1js (formerly SnarkyJS), and most importantly, built some amazing projects that will soon be among the first zkApps built with o1js (formerly SnarkyJS).
To provide this level of direct support, we could select only a limited number of participants. Participants in this initial cohort, which ran January to April 2022, were selected based on the strength of their zkApp submissions at the end of the recent zkApps Bootcamp & Hackathon. Those who completed the zkApps Builders Program received a grant to support their work.
Forming project ideas
Before joining the program, each builder submitted an idea for the project that they would be working on for the next 12 weeks. Their project idea could be a continuation of what they worked on in the Bootcamp, or it could be something entirely new.
Once the program started, builders had a chance to further flesh out and finalize their project ideas during the first two weeks of the program. Since the main goal of the program is for builders to learn, every participant’s idea was reviewed by O(1) Labs to help maximize the learnings and viability of what could be accomplished during 12-weeks (although completion of the project idea was not a requirement). If further discussion was needed, some builders met with O(1) Labs to brainstorm and discuss ideas and project requirements.
Participant projects
We’re excited to present the ideas that came out of the builders program, which show the range and capabilities of zkApps. Here are some of the projects that came out of this group:
- A o1js (formerly SnarkyJS) implementation of a Deep Neural Network for the MNIST Handwritten Digits Dataset (Github)
- Cachebox, a zkApp escape game built on the MINA blockchain (Github)
- Mina zk-Rollup, a modular rollup for zero knowledge smart contacts, zkApps, on the Mina blockchain (Github)
- Shadow, a mixer that preserves privacy for cryptocurrency transactions (Github)
- LendApp, a proof concept of Off-Chain Transaction Analytics (OCTA) (Github; blog)
Note that these projects are still a work in progress by their creators.
Keep an eye out for upcoming detailed write ups on these projects written by the builders themselves.
Learnings from the first run
Our goal for the program was to maximize learning for both zkApp Builders participants and to improve o1js (formerly SnarkyJS) & zkApps.
During our weekly group sessions and day-to-day in Discord, builders provided specific feedback about o1js (formerly SnarkyJS) that we collected, fixed in real time in most cases, and integrated larger items into our product roadmap and Github issues. These builders helped shape o1js (formerly SnarkyJS) into a more ideal zero-knowledge programming framework. And future builders will have this chance as well!
Given the unique capabilities of o1js (formerly SnarkyJS) and zkApps for zero-knowledge proof based smart contracts, we were curious to see what ideas people were interested to build. We were blown away by the quality and creativity of projects built during the program (mentioned above) and excited to see things like the Deep Neural Network using o1js (formerly SnarkyJS), which we wouldn’t have expected in the very first cohort.
Feedback from Builders
In our anonymous, post-program feedback survey, we asked developers: “How would you describe the zkApps Builders Program to a friend”. They said:
“It was a great experience interacting with the Mina/O1 team and learning about zkApps as the system is getting built. Made me super optimistic about the future of Mina.”
“Innovative, friendly and energetic.”
“It was a very awesome learning experience, it helped me understand the technology and science of ZKP better, it was nice getting challenged and being one of the first to ever develop a zkApp.”
“The zkApp builder program gives developers access to the people who work on o1js (formerly SnarkyJS) so that they can learn and solve problems as quickly as possible. It’s selective enough that all of the people in it are really smart and it ended up being a lot of fun for me.”
It was an equal pleasure working with these builders!
Next Builders Program
We received such positive feedback from the initial program, that today we’re announcing a 3x larger 2022 Summer zkApps Builders Program! To ensure we can provide the same hands-on support, the group size will remain limited to 10 or fewer teams per cohort and we will have 3 simultaneous cohorts.
Apply for the next zkApps Builders Program here.
Or to get started building a zkApp today, read the zkApp docs for a gentle introduction and join the discussion in #zkapps-developers on Mina’s Discord!
About Mina Protocol
Mina is the world’s lightest blockchain, powered by participants. Rather than apply brute computing force, Mina uses advanced cryptography and recursive zk-SNARKs to design an entire blockchain that is about 22kb, the size of a couple of tweets. It is the first layer-1 to enable efficient implementation and easy programmability of zero knowledge smart contracts (zkApps). With its unique privacy features and ability to connect to any website, Mina is building a private gateway between the real world and crypto—and the secure, democratic future we all deserve.