Skip to main content

Aleo instructions and snarkVM

Welcome to the Aleo instructions guide. Aleo instructions is the intermediate representation of Aleo programs. All Leo programs compile to Aleo instructions which compile to bytecode. We recommend learning and using Aleo instructions if your goal is fine-grained circuit design or if you are implementing a compiler that reads in a high-level language other than Leo and want your programs to run on Aleo.

Aleo programs are files with a .aleo extension. Aleo programs contain Aleo instructions - an assembly-like programming language. Aleo instructions are compiled into AVM opcodes that can be executed by the Aleo Virtual Machine.

Install snarkVM to compile and execute Aleo instructions.


snarkVM is currently in active development. Please monitor the repository on GitHub for possibly breaking changes.

Installing snarkVM

Proceed to Installation for information on how to install snarkVM.

Hello Aleo Instructions

Develop your first Hello Aleo Aleo instructions program.

Aleo Instructions Guide

Learn the core concepts and syntax of Aleo instructions.

Read the full list of supported AVM opcodes.

Formal Language Documentation

Check your program or compiler implementation against the Aleo instructions grammar.

Study the formal ABNF grammar specification for the full formal syntax of Aleo instructions.

Command Line Interface Documentation

The snarkVM CLI provides a suite of commands to make programming in Aleo instructions easy.

Additional Material

Install Aleo instructions for your favorite code editor.