o1js
Version:
TypeScript framework for zk-SNARKs and zkApps
67 lines (47 loc) • 2.87 kB
Markdown
# o1js [](https://www.npmjs.com/package/o1js) [](https://www.npmjs.com/package/o1js) [](https://github.com/o1-labs/o1js/blob/main/CONTRIBUTING.md)
## o1js
o1js makes it easy for developers to build applications powered by
zero-knowledge (zk) cryptography.
Developers can use o1js to write zk circuits and prove + verify them in browser
or node environment, or create proofs to be verified by the Mina Protocol.
## Learn More
- [zkApp CLI](https://www.npmjs.com/package/zkapp-cli) is a scaffolding tool to
start a new project with o1js
- To learn more about the language features, see the
[o1js documentation](https://docs.o1labs.org/o1js).
- To learn how to build ZkApps on Mina, see the
[zkApp documentation](https://docs.minaprotocol.com/zkapps).
- To meet other developers building zkApps with o1js, participate in the
[#zkapps-developers](https://discord.com/channels/484437221055922177/915745847692636181)
channel on Mina Protocol Discord.
- For a list of changes between versions, see the
[CHANGELOG](https://github.com/o1-labs/o1js/blob/main/CHANGELOG.md).
- To stay up to date with o1js, see the
[o1Labs Blog](https://www.o1labs.org/blog?topics=o1js).
## Contributing
o1js is an open source project. We appreciate all community contributions to
o1js!
See the
[Contributing guidelines](https://github.com/o1-labs/o1js/blob/main/CONTRIBUTING.md)
for ways you can contribute.
## Development Workflow
For guidance on building o1js from source and understanding the development
workflow, see
[o1js README-dev](https://github.com/o1-labs/o1js/blob/main/README-dev.md).
## Community Packages
High-quality community packages from open source developers are available for
your project.
- **o1js-elgamal** A partially homomorphic encryption library for o1js based on
Elgamal encryption: [GitHub](https://github.com/Trivo25/o1js-elgamal) and
[npm](https://www.npmjs.com/package/o1js-elgamal)
- **o1js-pack** A library for o1js that allows a zkApp developer to pack extra
data into a single Field. [GitHub](https://github.com/45930/o1js-pack) and
[npm](https://www.npmjs.com/package/o1js-pack)
- **zk-regex-o1js** A CLI tool for compiling ZK Regex circuits in o1js.
[Github](https://github.com/Shigoto-dev19/zk-regex-o1js) and
[npm](https://www.npmjs.com/package/zk-regex-o1js)
- **eddsa-o1js** A library for provable EdDSA and Twisted Edwards Curve
operations. [Github](https://github.com/o1-labs-XT/eddsa-o1js) and
[npm](https://www.npmjs.com/package/eddsa-o1js)
To include your package, see
[Creating high-quality community packages](https://github.com/o1-labs/o1js/blob/main/CONTRIBUTING.md#creating-high-quality-community-packages).