# Running an Aleo node with snarkOS: a developer’s guide **Published by:** [Colliseum](https://paragraph.com/@colliseum/) **Published on:** 2025-06-20 **URL:** https://paragraph.com/@colliseum/running-an-aleo-node-with-snarkos-a-developer-s-guide ## Content My name is Heorhii, and in this guide, I’ll walk you through how to run and understand Aleo’s snarkOS, the decentralized operating system powering ZK apps. Whether you're building applications, participating in consensus, or simply exploring Aleo’s infrastructure, snarkOS is the backbone of the network. Let’s dive in. What is snarkOS? snarkOS is the foundation of the Aleo blockchain. It verifies off-chain, zero-knowledge transactions using snarkVM and maintains encrypted state in a publicly verifiable way. snarkOS enables Aleo to support private apps with a trustless execution environment. You can run snarkOS in three distinct modes, depending on your role in the network: client, prover, or validator. Node roles in snarkOS: 1. Client. A client node connects to the network and performs essential tasks like retrieving blockchain data and submitting transactions. It doesn't participate in block production or consensus. Key responsibilities: Fetch and serve blocks, transactions, and program state Submit new transactions to the network Stay in sync with other nodes Expose API access to developers and applications System requirements: OS: Ubuntu 22.04 (LTS), macOS Sonoma, or Windows 11 CPU: 32 cores RAM: 32 GB Storage: 300 GB PCIe Gen 3 x4 NVMe SSD or better Network: 100 Mbps upload and download How to run a client: git clone https://github.com/AleoHQ/snarkOS.git cd snarkOS ./run-client.sh Or run it directly: snarkos start --client More info you can find here: https://github.com/ProvableHQ/snarkOS#2-build-guide 2. Prover. Provers solve the CoinbasePuzzle to generate valid ProverSolutions that earn rewards. They do not participate in consensus but help secure the network by contributing computational power. Reward model: Provers earn a CoinbaseReward when their solution is included in a block Rewards are proportional to computational contribution, not winner-takes-all The CoinbaseReward decreases 10% annually over 10 years How to run a prover: Start by following the instructions in the Build Guide. Run: snarkos start --prover No staking or permission is required to become a prover. 3. Validator. Validators are consensus participants. They run AleoBFT and are responsible for generating blocks and finalizing transactions. To become a validator, you must stake at least 10 million AleoCredits. Key functions: Participate in the AleoBFT consensus Approve batches of transactions Generate finalized blocks Maintain synchronization with other validators Start an Aleo validator node: Follow the official build guide to install snarkOS, then run: snarkos start --validator --nodisplay \ --bft 0.0.0.0:5000 \ --node 0.0.0.0:4130 \ --peers "validator_ip_1:4130,validator_ip_2:4130,core_client_ip_1:4130,core_client_ip_2:4130" \ --validators "validator_ip_1:5000,validator_ip_2:5000" \ --verbosity 1 \ --norest \ --private-key-file ~/snarkOS/privatekey Alternatively, run: ./run-validator.sh You can also define the private key inline instead of using a file by adding the --private-key flag. Enabling validator telemetry (optional). Telemetry allows you to monitor validator participation in the consensus process. This feature is optional but useful for tracking node performance. Enable telemetry via installation: cargo install --locked --path . --features telemetry Or via the validator script: ./run-validator.sh You’ll be prompted: Do you want to enable validator telemetry? (y/n, default: y) Telemetry endpoints: GET /{network}/validators/participation GET /{network}/validators/participation?metadata=true JWT Authentication snarkOS supports JWT-based authentication for protected endpoints. You can provide the following runtime parameters: --jwt-secret: Base64-encoded JWT secret for signing and validation --jwt-timestamp: UNIX timestamp used to validate the token Protected endpoints: /node/address /program/{id}/mapping/{name} /db_backup More info you can find here: https://developer.aleo.org/concepts/network/snarkos Launch your Aleo node with a single click. Running a node on Aleo helps secure the network and gives you control over your own data. But until now, deploying a node could be technical and time-consuming. https://console.cloud.google.com/marketplace/product/bcw-marketplace-public/snarkos-rpc?pli=1&inv=1&invt=Ab0m5g&project=galvanic-style-270107 Thanks to Provable and BCW, you can now spin up a full Aleo node on Google Cloud in just one click. https://console.cloud.google.com/marketplace/product/bcw-marketplace-public/snarkos-rpc?pli=1&inv=1&invt=Ab0m5g&project=galvanic-style-270107 With the One-Click Aleo Node from the Google Cloud Marketplace, you can: Start up quickly. Deploy a snarkOS client node on Canary, Testnet, or Mainnet with REST API enabled Customize. Choose VM specs to suit your needs Skip manual setup. No compiling, no config files Tailor runtime logs. Set verbosity level for your logs Free to use. You only pay for the VM you run A bootstrap service will automatically fetch a recent Aleo blockchain snapshot, speeding up the initial sync. You can monitor progress using: sudo systemctl status snarkos-firstboot.service sudo systemctl status snarkos.service This is the fastest way to join the network and start experimenting or building services. More about this here: https://aleo.org/post/one-click-aleo-node/ Final thoughts. No matter which role you choose – Client, Prover, or Validator – running a node helps strengthen the Aleo network. If you're a builder like me, snarkOS is your gateway into the zk-powered future. Let me know if you want help getting your node up and running! Subscribe To know more about Aleo, join now! Aleo Twitter Aleo Discord Aleo Website List of Aleo and Leo code and resourses Prepared by Colliseum ## Publication Information - [Colliseum](https://paragraph.com/@colliseum/): Publication homepage - [All Posts](https://paragraph.com/@colliseum/): More posts from this publication - [RSS Feed](https://api.paragraph.com/blogs/rss/@colliseum): Subscribe to updates - [Twitter](https://twitter.com/HeorhiiY): Follow on Twitter