# snarkyjs

> TypeScript framework for zk-SNARKs and zkApps

Latest version **0.12.1** (published 2023-07-14) · Apache-2.0 license · 0 weekly downloads

> **Deprecated.** This package is deprecated.

## Install

```sh
npm install snarkyjs
pnpm add snarkyjs
yarn add snarkyjs
bun add snarkyjs
```

Provides the command `snarky-run`.

## Health

**Score 10/100 (F)** — status: deprecated.

Negative: deprecated.

## Facts

| | |
|---|---|
| Version | 0.12.1 |
| Published | 2023-07-14 |
| First published | 2021-12-03 |
| Weekly downloads | 0 |
| License | Apache-2.0 |
| TypeScript types | bundled |
| Module format | ESM + CommonJS |
| Node | >=16.4.0 |
| Dependencies | 6 |
| Unpacked size | 89.1 MB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| Author | O |
| Maintainers | o1-labs |
| Keywords | mina, snarkyjs, zkapp, zk, smart contract, cryptography, blockchain, web3, zk-snark, zero knowledge |

## Links

- npm: https://www.npmjs.com/package/snarkyjs
- Homepage: https://github.com/o1-labs/snarkyjs/
- npm.io page: https://npm.io/package/snarkyjs

## Dependencies (6)

- [tslib](https://npm.io/package/tslib.md) ^2.3.0
- [blakejs](https://npm.io/package/blakejs.md) 1.2.1
- [js-sha256](https://npm.io/package/js-sha256.md) ^0.9.0
- [detect-gpu](https://npm.io/package/detect-gpu.md) ^5.0.5
- [isomorphic-fetch](https://npm.io/package/isomorphic-fetch.md) ^3.0.0
- [reflect-metadata](https://npm.io/package/reflect-metadata.md) ^0.1.13

## Alternatives

- [localforage](https://npm.io/package/localforage.md) — 6.2M weekly downloads
- [localforage-observable](https://npm.io/package/localforage-observable.md) — 30.8K weekly downloads
- [@y/y](https://npm.io/package/@y/y.md) — 30.1K weekly downloads
- [@metaobjectsdev/render](https://npm.io/package/@metaobjectsdev/render.md) — 3.5K weekly downloads
- [@ledgerhq/coin-algorand](https://npm.io/package/@ledgerhq/coin-algorand.md) — 1.1K weekly downloads

## Recent versions

- 0.12.1 (latest) — 2023-07-14
- 0.12.0 — 2023-07-12
- 0.11.4 — 2023-07-06
- 0.11.3 — 2023-06-28
- 0.11.2 — 2023-06-28
- 0.11.1 — 2023-06-27
- 0.11.0 — 2023-06-01
- 0.10.1 — 2023-05-08
- 0.10.0 — 2023-05-02
- 0.9.8 — 2023-04-12
- 0.9.7 — 2023-04-11
- 0.9.6 — 2023-04-07
- 0.9.5 — 2023-03-28
- 0.9.4 — 2023-03-21
- 0.9.3 — 2023-03-15
- … 34 more at https://npm.io/package/snarkyjs/versions

## README

# SnarkyJS &nbsp; [![npm version](https://img.shields.io/npm/v/snarkyjs.svg?style=flat)](https://www.npmjs.com/package/snarkyjs) [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](https://github.com/o1-labs/snarkyjs/blob/main/CONTRIBUTING.md)

SnarkyJS helps developers build apps powered by zero-knowledge (zk) cryptography.

The easiest way to write zk programs is using SnarkyJS.  

SnarkyJS is a TypeScript library for [zk-SNARKs](https://minaprotocol.com/blog/what-are-zk-snarks) and zkApps. You can use SnarkyJS to write zk smart contracts based on zero-knowledge proofs for the Mina Protocol. 

SnarkyJS is automatically included when you create a project using the [Mina zkApp CLI](https://github.com/o1-labs/zkapp-cli). 

## Learn More

- To learn more about developing zkApps, see the [zkApp Developers](https://docs.minaprotocol.com/zkapps) docs.

- For guided steps building and using zkApps, see the [zkApp Developers Tutorials](https://docs.minaprotocol.com/zkapps/tutorials/hello-world).

- To meet other developers building zkApps with SnarkyJS, 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/snarkyjs/blob/main/CHANGELOG.md).

- To stay up to date with SnarkyJS, see the [O(1) Labs Blog](https://blog.o1labs.org/tagged/snarkyjs).

## Contributing

SnarkyJS is an open source project. We appreciate all community contributions to SnarkyJS! 

See the [Contributing guidelines](https://github.com/o1-labs/snarkyjs/blob/main/CONTRIBUTING.md) for ways you can contribute. 

## Community Packages

High-quality community packages from open source developers are available for your project. 

- **snarkyjs-elgamal** A partially homomorphic encryption library for SnarkyJS based on Elgamal encryption: [GitHub](https://github.com/Trivo25/snarkyjs-elgamal) and [npm](https://www.npmjs.com/package/snarkyjs-elgamal) 

To include your package, see [Creating high-quality community packages](https://github.com/o1-labs/snarkyjs/blob/main/CONTRIBUTING.md#creating-high-quality-community-packages).

---
_Source: https://npm.io/package/snarkyjs · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
