Aleo SDK
The Aleo SDK provides tools for building zero knowledge applications. It consists of several TypeScript & JavaScript libraries which provide the following functionality:
- Aleo account management
- Web-based program execution and deployment
- Aleo credit transfers
- Management of program state and data
- Communication with the Aleo network
All of this functionality is demonstrated on provable.tools.
The Aleo SDK is divided into three Typescript/Javascript packages
1. Aleo SDK - Build Zero Knowledge Web Apps
The official Aleo SDK providing Javascript/Typescript tools for creating zero knowledge apps.
⚡ Build your own app
Start here with the documentation and follow the instructions to install the Aleo SDK to get started building your first zero knowledge web app.
Source: sdk/sdk
2. Create-leo-App - Zero-Knowledge Web App Examples
Create-leo-app provides zero-knowledge web app examples in common web frameworks such as React. Developers looking to start with working examples should start here.
⚡ Build your own app
You can start with a template by running
npm create leo-app@latest
Source: sdk/create-leo-app
3. Aleo-Wasm - Zero Knowledge Algorithms in JavaScript + WebAssembly
Aleo Wasm is a Rust crate which compiles Aleo code responsible for creating and executing zero knowledge programs into WebAssembly.
When compiled with wasm-pack
JavaScript bindings are generated for the WebAssembly allowing Aleo zero
knowledge programs to be used in the browser and NodeJS. This package is available on NPM (linked above). The
documentation provides instructions for compiling this crate and using it in web projects for those interested in building from
source.
❗ Currently program execution is only available in web Browsers. However, account, program and data management within NodeJS is functional.
Source: sdk/wasm
4. Aleo Python SDK - Zero Knowledge Algorithms in Python and Zero Knowledge Machine Learning
The official Aleo Python SDK providing tools for creating zero knowledge apps. It consists of two separate libraries:
- The aleo library, which uses foreign function interfaces to bring snarkVM functionalities to Python.
- The zkml library, which transpiles scikit-learn machine learning models into Leo programs for inference.
Both libraries are in an early development stage. They can be installed through pip install aleo
respectively pip install zkml
. The
documentation on the aleo library and the documentation on the zkml library provide more information on installation and usage.
Source: python-sdk
📚 Documentation
API Documentation
API Documentation, tutorials for the Aleo SDK, and documentation on how to build Leo and Aleo Instructions programs can be found on the Aleo Developer Docs page.
SDK Readme
The SDK Readme provides concepts core to executing zero knowledge programs in the web and several detailed examples of how to use the SDK to build web apps using Aleo.
Aleo Wasm Readme
The Aleo Wasm Readme provides instructions for compiling the Aleo Wasm crate and using it in web projects. Those who want to build from source or create their own WebAssembly bindings should start here