o1js  by o1-labs

TypeScript framework for zero-knowledge smart contracts

created 4 years ago
582 stars

Top 56.4% on sourcepulse

GitHubView on GitHub
Project Summary

o1js is a TypeScript framework for building zero-knowledge applications (zkApps) on the Mina Protocol. It simplifies the creation of zk-SNARKs smart contracts, enabling developers to leverage zero-knowledge cryptography for enhanced privacy and scalability.

How It Works

o1js provides a high-level TypeScript API for defining zk circuits and smart contracts. It compiles these circuits into efficient SNARK-friendly representations, allowing for recursive proof generation. This approach abstracts away the complexities of underlying zero-knowledge primitives, making zk development more accessible.

Quick Start & Requirements

Highlighted Details

  • Evolution of SnarkyJS, with a focus on recursive proof generation.
  • TypeScript-first development experience for zk-SNARKs.
  • Integrates with the Mina Protocol for zkApp deployment.
  • Supports community packages like o1js-elgamal and o1js-pack.

Maintenance & Community

  • Active development by O(1) Labs.
  • Community engagement via the #zkapps-developers channel on Mina Protocol Discord.
  • Changelog available for version history.
  • Blog for updates: https://blog.o1-labs.org/

Licensing & Compatibility

  • MIT License.
  • Permissive for commercial use and integration with closed-source projects.

Limitations & Caveats

The project is a successor to SnarkyJS, indicating potential for breaking changes or migration efforts for existing users. Specific performance benchmarks or detailed resource requirements for circuit compilation are not detailed in the README.

Health Check
Last commit

1 day ago

Responsiveness

1 day

Pull Requests (30d)
40
Issues (30d)
15
Star History
20 stars in the last 90 days

Explore Similar Projects

Feedback? Help us improve.