@provablehq/sdk
Version:
A Software Development Kit (SDK) for Zero-Knowledge Transactions
65 lines (49 loc) • 4.17 kB
Markdown
# Provable SDK for Building Zero-Knowledge Web Apps
<p align="center">
<img alt="Provable SDK" width="1412" src="../.resources/banner.png">
</p>
<p align="center">
<a href="https://docs.leo-lang.org"> <img alt="Website" src="https://img.shields.io/badge/Developer_Docs-online-blue"></a>
<a href="https://circleci.com/gh/ProvableHQ/sdk"><img src="https://circleci.com/gh/ProvableHQ/sdk.svg?style=svg"></a>
<a href="https://discord.com/invite/aleo"><img src="https://img.shields.io/discord/700454073459015690?logo=discord"/></a>
<a href="https://github.com/ProvableHQ/sdk#%EF%B8%8F-contributors"><img src="https://img.shields.io/badge/contributors-23-ee8449"/></a>
<a href="https://www.npmjs.com/package/@provablehq/sdk"> <img alt="Provable SDK" src="https://img.shields.io/npm/l/%40provablehq%2Fsdk?label=NPM%20-%20Aleo%20SDK&labelColor=green&color=blue"></a>
</p>
The [Provable SDK](https://github.com/ProvableHQ/sdk) is an open source TypeScript/JavaScript SDK for building private full stack web applications. The
SDK provides an easy API for using Aleo's core suite of cryptographic primitives, zk-SNARKs and private program execution
protocol directly within Javascript. It also provides APIs for interacting with nodes and applications on the Aleo Network.
Applications built with the Provable SDK include:
* **Private DeFi**
* **Private Data Custody Systems**
* **Zk Games & Gaming Toolkits**
* **ZkML**
* **Zero-Knowledge Identity Management**
* **Aleo Wallets**
## Features
The Provable SDK provides the following features. Follow the links below for live demonstrations of these features on
[provable.tools](https://provable.tools)
1. [Aleo account management](https://provable.tools/account)
2. [Aleo cryptographic primitives](https://provable.tools/algebra)
3. [Web based zero-knowledge program execution and deployment](https://provable.tools/develop)
4. [Aleo credit transfers and staking](https://provable.tools/transfer)
5. [Management of program state](https://provable.tools/protocol)
6. [Communication with the Aleo network](https://provable.tools/rest)
## Start Building
Developers interested in using the SDK to build private web applications can get started with the following resources.
### [The SDK Guide](https://docs.explorer.provable.com/docs/sdk/6p7047svvq2ox-intro-to-aleo)
<a href="https://www.npmjs.com/package/@provablehq/sdk"> <img alt="Provable SDK" src="https://img.shields.io/npm/l/%40provablehq%2Fsdk?label=NPM%20-%20Aleo%20SDK&labelColor=green&color=blue"></a>
A step-by-step guide to building private web applications with the Provable SDK. The guide covers creating Aleo accounts,
transferring and receiving aleo credits, executing/deploying/interacting with Aleo programs, managing private and public
state, and best practices for building private web applications.
### [Create-Leo-App](https://docs.leo-lang.org/sdk/create-leo-app/tutorial)
<a href="https://www.npmjs.com/package/create-leo-app"> <img alt="Create Leo App" src="https://img.shields.io/npm/l/create-leo-app?label=NPM%20-%20Create-Leo-App&labelColor=green&color=blue"></a>
A suite of examples and templates for building private web applications in a variety of Javascript frameworks. These
examples can be easily installed and run using the `create-leo-app` command line tool. The examples cover a wide range
of use cases such as Private NFTs, offline transaction signing, and usage of the SDK in React, Next, and VanillaJS.
### [SDK API Documentation](https://docs.explorer.provable.com/docs/sdk/0qgi3uyhotv62-account)
For developers who prefer to dive straight into the code, the SDK API documentation provides a comprehensive reference
for all the SDK's classes, methods, and interfaces. The documentation is generated from the SDK's TypeScript source code.
### [Leo Language Documentation](https://docs.leo-lang.org)
For developers who want to build their own zero-knowledge programs, the Leo Language provides an easy-to-use imperative
programming language for writing zero-knowledge programs on Aleo. In conjuction with the SDK, private programs built
using Leo can be turned into fully functional private web applications.