Why Use a Local Setup?
When testing delegations and real-time behavior of your Solana programs, fast feedback loops are critical. Running a Local Ephemeral Rollup Validator allows you to:- Test delegations and behaviors quickly without network latency or rate limits.
- Simulate Solana runtime transactions locally.
- Customize your validator setup for your own needs.
Quickstart: Local Ephemeral Validator
Explore delegation and test scripts for both Anchor and Native Rust:⚠️ Important: Upgrade your program with the correct validator identity
When using a local ER validator, you need to connect it to your preferred base layer (e.g.,mainnet-beta, devnet, or localhost) where the accounts are delegated. To delegate your PDA to a specific ER validator identity, you must update the delegation config in your program. This ensures that accounts can be properly committed and undelegated on the base layer.
These public validators are supported for development. Make sure to add the specific ER validator in your delegation instruction:
Mainnet- Asia (as.magicblock.app):
MAS1Dt9qreoRMQ14YQuhg8UTZMMzDdKhmkZMECCzk57 - EU (eu.magicblock.app):
MEUGGrYPxKk17hCr7wpT6s8dtNokZj5U2L57vjYMS8e - US (us.magicblock.app):
MUS3hc9TCw4cGC12vHNoYcCGzJG1txjgQLZWVoeNHNd
- Asia (devnet-as.magicblock.app):
MAS1Dt9qreoRMQ14YQuhg8UTZMMzDdKhmkZMECCzk57 - EU (devnet-eu.magicblock.app):
MEUGGrYPxKk17hCr7wpT6s8dtNokZj5U2L57vjYMS8e - US (devnet-us.magicblock.app):
MUS3hc9TCw4cGC12vHNoYcCGzJG1txjgQLZWVoeNHNd - TEE (tee.magicblock.app):
FnE6VJT5QNZdedZPnCoLsARgBwoE6DeJNjBs2H1gySXA
- Local ER (localhost:7799):
mAGicPQYBMvcYveUZA5F5UNNwyHvfYh5xkLS2Fr1mev
Deploy and test on base layer via correct validator identity
- solana-test-validator (localhost)
- devnet
Set up Solana Test Validator (Localhost) and deploy your upgraded program
- Install
solana-test-validator:
- Run
solana-test-validatorwith cloned delegation program and accounts from Devnet:
- Upgrade and deploy your program to localhost:
- Rust Native
- Anchor
Install and run MagicBlock ER validator (Localhost)
- Install the latest MagicBlock Ephemeral Validator:
- Run the local ephemeral validator pointing to localhost:

