This post is part of our roadmap series, diving deeper into the focus areas outlined in the o1Roadmap. Each post explores how each Engineering team at o1Labs is pushing Mina forward by covering what we’ve delivered (recent milestones), what we’re building (current initiatives in progress), and what’s next (future priorities).
The Exploration Team is the newest of the engineering group at o1Labs, dedicated to supporting zkApp developers and helping them thrive.
What We’ve Delivered
Already, we’ve delivered two new example zkApps that give developers a deeper understanding of how to use our tools, and produced new articles explaining higher-level concepts like UI framework integration guides and upgradability with Mina’s zkApp architecture. Looking forward to 2025, we’re excited to build on that base and take on some fun new engineering challenges.
What We’re Building
At o1Labs, delivering the toolkit that Mina developers need to build the next generation of zkApps is a strategic priority. Yesterday, you heard from our future zkApps team about their roadmap to make foundational improvements to the capabilities and performance of o1js. We complement their work by focusing on the last-mile delivery of these tools to our developer community. That mandate can be broken down into tactical priorities.
One priority is to enrich the standard library of o1js with useful primitives. What developers need to build complex zkApps on Mina are tools that work as expected out of the box. We want non-cryptographers to be able to program meaningful and powerful apps with our SDK. When application developers hit roadblocks that require them to implement a standard cryptographic function on their own, we are falling short of that vision. That’s why one of our top priorities for 2025 is implementing a big integer library. As a standalone feature, big integers will provide value to application developers, but they are also a prerequisite for implementing some useful primitives. Examples include support for RSA, brainpool, and BLS, each with field sizes higher than our currently supported limit of 259 bits. Our team is not committed to implementing any of these in particular, but we are committed to assessing community needs and building the highest priority primitives throughout next year.
Another top priority for us is improving documentation for our SDK. What’s the point of shipping the world’s lightest-weight zk circuit DSL if no one knows how to use it? In the past, we’ve done a good job onboarding developers to the basics of using o1js, and demonstrating specific use cases in tutorials. Our immediate target is to document our more advanced features better so that developers can confidently combine pieces of the SDK in interesting new ways without having to review every tutorial and blog post first to learn about the entire API. Two axes we’re looking to improve on are quality and discoverability. Quality means that all of our documentation content is accurate and understandable. Discoverability means that developers can find the information they are looking for. Keep an eye out for improvements here early in 2025!
What’s Next
Because our team is responsive to community pain points, we don’t have hard project commitments with a timeline beyond a few months. We don’t know what the highest priority will be in H2 2025 because a lot can change in six months. We want to be guided by adoption, emerging use cases, and new use cases unlocked by other teams’ deliveries. While we do have some themes we are evaluating internally, we also believe in a community-driven roadmap, so we want to hear from you! Join us in the Mina Discord, in the #zkapps-developer channel.