# SnarkVM ## Docs - [Introduction to SnarkVM](https://mintlify.wiki/provablehq/snarkvm/introduction.md): Learn about SnarkVM, a decentralized virtual machine for zero-knowledge proof execution on the Aleo blockchain - [Installation](https://mintlify.wiki/provablehq/snarkvm/installation.md): Install SnarkVM on your system using Cargo or build from source - [Quick Start](https://mintlify.wiki/provablehq/snarkvm/quickstart.md): Build your first SnarkVM application with this step-by-step guide - [Core Concepts Overview](https://mintlify.wiki/provablehq/snarkvm/concepts/overview.md): Introduction to SnarkVM's architecture, design principles, and zero-knowledge execution model - [Architecture](https://mintlify.wiki/provablehq/snarkvm/concepts/architecture.md): Detailed breakdown of SnarkVM's crate structure, module organization, and dependency graph - [Console and Circuit Types](https://mintlify.wiki/provablehq/snarkvm/concepts/consensus-and-circuit.md): Understanding the dual type system that powers SnarkVM's zero-knowledge execution - [Zero-Knowledge Proofs in SnarkVM](https://mintlify.wiki/provablehq/snarkvm/concepts/zero-knowledge-proofs.md): Understanding SNARKs, R1CS constraint systems, and Varuna proof system implementation - [Creating Programs](https://mintlify.wiki/provablehq/snarkvm/guides/creating-programs.md): Learn how to create and compile Aleo programs using snarkVM - [Executing Transactions](https://mintlify.wiki/provablehq/snarkvm/guides/executing-transactions.md): Learn how to execute program functions and generate zero-knowledge proofs - [Working with Accounts](https://mintlify.wiki/provablehq/snarkvm/guides/working-with-accounts.md): Learn how to manage private keys, view keys, and addresses in snarkVM - [Managing Records](https://mintlify.wiki/provablehq/snarkvm/guides/managing-records.md): Learn how to find, decrypt, and use records in the Aleo ledger - [Deploying Programs](https://mintlify.wiki/provablehq/snarkvm/guides/deploying-programs.md): Learn how to deploy Aleo programs to the network using snarkVM - [CUDA Acceleration](https://mintlify.wiki/provablehq/snarkvm/advanced/cuda-acceleration.md): Using CUDA for performance acceleration in SnarkVM - [Custom Network Configurations](https://mintlify.wiki/provablehq/snarkvm/advanced/custom-networks.md): Setting up custom network configurations for development and testing - [Storage Modes](https://mintlify.wiki/provablehq/snarkvm/advanced/storage-modes.md): Different storage modes and their use cases in SnarkVM - [WebAssembly Integration](https://mintlify.wiki/provablehq/snarkvm/advanced/wasm-integration.md): Integrating SnarkVM with WebAssembly for browser and edge deployments - [API Overview](https://mintlify.wiki/provablehq/snarkvm/api/overview.md): Overview of the SnarkVM Algorithms API structure and module organization - [Algorithms Crate](https://mintlify.wiki/provablehq/snarkvm/api/algorithms/overview.md): Overview of the snarkvm-algorithms crate and its cryptographic primitives - [Cryptographic Hash Functions](https://mintlify.wiki/provablehq/snarkvm/api/algorithms/crypto-hash.md): Poseidon and SHA-256 hash functions optimized for zero-knowledge circuits - [SNARK Implementations](https://mintlify.wiki/provablehq/snarkvm/api/algorithms/snark.md): Varuna zkSNARK proof system with Algebraic Holographic Proofs - [Polynomial Commitment Schemes](https://mintlify.wiki/provablehq/snarkvm/api/algorithms/polycommit.md): KZG10 and SonicKZG10 polynomial commitment implementations - [FFT Implementations](https://mintlify.wiki/provablehq/snarkvm/api/algorithms/fft.md): Fast Fourier Transform for efficient polynomial arithmetic over finite fields - [Console Overview](https://mintlify.wiki/provablehq/snarkvm/api/console/overview.md): Overview of the snarkVM Console module and its core components - [Account Types](https://mintlify.wiki/provablehq/snarkvm/api/console/account.md): Account management types including private keys, view keys, compute keys, addresses, and signatures - [Console Types](https://mintlify.wiki/provablehq/snarkvm/api/console/types.md): Primitive data types including Field, Group, Scalar, Boolean, Integer, and String - [Program Types](https://mintlify.wiki/provablehq/snarkvm/api/console/program.md): Program data structures including Identifier, Literal, Plaintext, Record, Value, and ProgramID - [Network Types and Traits](https://mintlify.wiki/provablehq/snarkvm/api/console/network.md): Network trait, implementations, and consensus parameters - [Circuit Overview](https://mintlify.wiki/provablehq/snarkvm/api/circuit/overview.md): Overview of the circuit crate and R1CS constraint system - [Circuit Types](https://mintlify.wiki/provablehq/snarkvm/api/circuit/types.md): Circuit types for constraint system synthesis - [Circuit Environment](https://mintlify.wiki/provablehq/snarkvm/api/circuit/environment.md): Circuit environment trait and witness management - [Circuit Program](https://mintlify.wiki/provablehq/snarkvm/api/circuit/program.md): Circuit program types and execution - [Synthesizer Overview](https://mintlify.wiki/provablehq/snarkvm/api/synthesizer/overview.md): Overview of the snarkVM synthesizer crate for program execution and proof generation - [VM](https://mintlify.wiki/provablehq/snarkvm/api/synthesizer/vm.md): Virtual machine for program execution and blockchain state management - [Process & Stack](https://mintlify.wiki/provablehq/snarkvm/api/synthesizer/process.md): Program execution coordinator and stack management - [Program Types](https://mintlify.wiki/provablehq/snarkvm/api/synthesizer/program.md): Program structure including functions, closures, instructions, and finalize logic - [Ledger Overview](https://mintlify.wiki/provablehq/snarkvm/api/ledger/overview.md): Core ledger crate providing blockchain state management and block processing - [Block Types](https://mintlify.wiki/provablehq/snarkvm/api/ledger/block.md): Block, Header, Transaction, and Transition types in the ledger - [Storage and Consensus Store](https://mintlify.wiki/provablehq/snarkvm/api/ledger/store.md): Persistent storage layer for blockchain state - [Query Trait and Operations](https://mintlify.wiki/provablehq/snarkvm/api/ledger/query.md): Query interface for blockchain state access - [Utilities Overview](https://mintlify.wiki/provablehq/snarkvm/api/utilities/overview.md): Core utilities for serialization, parallelization, and common operations - [Serialization](https://mintlify.wiki/provablehq/snarkvm/api/utilities/serialization.md): Canonical serialization traits and implementations - [Parallel Execution](https://mintlify.wiki/provablehq/snarkvm/api/utilities/parallel.md): Parallel processing utilities and macros for efficient computation - [Examples overview](https://mintlify.wiki/provablehq/snarkvm/examples/overview.md): Practical examples of using SnarkVM in real applications - [Hello world example](https://mintlify.wiki/provablehq/snarkvm/examples/hello-world.md): A minimal example to get started with SnarkVM - [Token transfer example](https://mintlify.wiki/provablehq/snarkvm/examples/token-transfer.md): Transfer credits between accounts on the Aleo network - [Custom program example](https://mintlify.wiki/provablehq/snarkvm/examples/custom-program.md): Create and execute a custom Aleo program - [Proof verification example](https://mintlify.wiki/provablehq/snarkvm/examples/proof-verification.md): Generate and verify zero-knowledge proofs with SnarkVM