Welcome to MagicBlock Engine Examples
MagicBlock Engine is a scaling solution for performant, composable games and applications on Solana. This repository provides practical examples of how to integrate Ephemeral Rollups into your Solana programs.What are Ephemeral Rollups?
Ephemeral Rollups (ERs) are temporary, high-performance execution environments that run alongside the Solana base layer. They enable:- Low-latency transactions: Execute transactions in milliseconds instead of seconds
- Reduced costs: Lower transaction fees for high-frequency operations
- Seamless composability: Accounts can move between base layer and Ephemeral Rollups
- Automatic state sync: Changes are committed back to Solana automatically
The Ephemeral Rollups are currently under testing. Reach out on Discord to get access to the testing endpoint.
Quick navigation
Quickstart
Get your first example running in minutes
Core Concepts
Learn about delegation, commits, and transaction flow
Examples
Explore integration patterns across frameworks
MagicBlock Docs
Read the complete MagicBlock documentation
Key features
Account delegation
Delegate Solana accounts to Ephemeral Rollups for low-latency execution
Multiple frameworks
Examples for Anchor, Bolt, Rust Native, and Pinocchio
Automatic commits
State changes sync back to Solana automatically or on-demand
Magic Actions
Execute base chain actions automatically on commit
Session keys
Enable gasless transactions with session-based authentication
Scheduled cranks
Automate periodic program execution with the crank system
Available examples
Framework examples
- Anchor Counter - Simple counter using Anchor framework
- Rust Counter - Native Rust implementation without frameworks
- Bolt Counter - ECS-based counter using the Bolt framework
- Pinocchio Counter - Lightweight counter with Pinocchio
Advanced examples
- Crank Counter - Scheduled automatic execution with cranks
- Magic Actions - Trigger base chain actions from Ephemeral Rollups
- Session Keys - Gasless transactions with delegated signing
- Token Transfer - SPL token operations in Ephemeral Rollups
- Roll Dice - VRF integration for randomness
How it works
The typical workflow for using Ephemeral Rollups follows three steps:1
Delegate accounts
Transfer account ownership to the delegation program using CPI calls in your Solana program.
2
Execute transactions
Run transactions against delegated accounts in the Ephemeral Rollup with millisecond latency.
3
Commit or undelegate
Sync state changes back to Solana either automatically, manually, or when undelegating.
Getting started
Ready to build? Check out the Quickstart guide to run your first example in minutes. For complete documentation on Ephemeral Rollups, architecture details, and production deployment, visit docs.magicblock.gg.For integrated demos showcasing specific use cases, explore the MagicBlock Starter Kits.