The Leo Programming Language
Leo is an open-source, statically-typed, imperative programming language designed for building private applications on the Aleo blockchain. It abstracts the complexities of zero-knowledge cryptography, enabling developers to create secure, privacy-preserving applications while abstracting technical complexities.
Key Features
- Intuitive Syntax. Influenced by languages like JavaScript and Rust, Leo offers a familiar and readable syntax, making it accessible to a wide range of developers.
- Seamless Aleo Integration. Specifically designed for the Aleo blockchain, Leo ensures smooth deployment and management of applications within Aleo's zero-knowledge ecosystem.
- Robust Tooling. Leo provides a comprehensive suite of tools, including a command-line interface and integrated development environment (IDE) plugins for Visual Studio Code, Sublime Text 3, and IntelliJ, enhancing the developer experience.
- Formal Verification. With a formally defined language structure, Leo enables developers to perform formal verification of their programs, ensuring correctness and security in application logic.
Overview
Getting Started. Install, set up your development environment, and get familiar with Leo.
Language. The syntax and semantics.
CLI. Utilities that will help you build, deploy, and execute Leo programs. Includes other helpful utilities.
Testing. The testing ecosystem for Leo programs.
Guides. Deepen your understanding of Leo and Aleo.
Resources. How to get involved with the community and supplemental material.
SDK. Productionize your Leo program.
Provable API. Endpoints to query and interact with
mainnet
andtestnet
.
Contributing
Found a bug? Have an idea for a feature? File an issue or PR on the Leo GitHub or the Documentation Source.