Why Solana Developers Choose Sei
- Familiar parallelization – Sei uses optimistic parallel execution similar to Solana’s Sealevel
- 400ms block times – Comparable to Solana’s speed, with instant finality
- ~100 MGas/s throughput – High performance without sacrificing EVM compatibility
- EVM ecosystem access – Leverage Ethereum’s mature tooling, audited contracts, and developer resources
- No dependency declarations – Unlike Solana, Sei handles parallelization automatically
Understanding the Paradigm Shift
Before diving into code, it’s essential to understand the fundamental architectural differences between Solana and EVM-based chains like Sei.Execution Model Comparison
Core Concept Mapping
Programs → Smart Contracts
On Solana, you write programs that are stateless executables. Data lives in separate accounts that programs can read and modify. On Sei EVM, smart contracts combine code and state in a single entity.- Solana (Anchor)
- Sei EVM (Solidity)
- No account space allocation needed—storage grows dynamically
- No explicit
Signervalidation—msg.senderis always authenticated - No system program imports—native operations are built into the EVM
PDAs → CREATE2 Deterministic Addresses
Solana’s Program Derived Addresses (PDAs) let you create deterministic addresses from seeds. On EVM, you achieve similar functionality withCREATE2.
- Solana PDA
- Sei EVM CREATE2
CPI → Contract Calls
Solana’s Cross-Program Invocation (CPI) becomes simple function calls in Solidity:- Solana CPI
- Sei EVM Contract Call
SPL Token → ERC-20
- SPL Token (Rust)
- ERC-20 (Solidity)
- No Associated Token Accounts (ATAs)—balances are stored directly in the contract
- Approvals use
approve()/transferFrom()pattern - No mint/freeze authorities in basic implementation (add via
Ownable)
Fee Model Translation
Understanding the fee differences is crucial for accurate cost estimation:No Rent on Sei!Unlike Solana where accounts can be garbage collected if rent isn’t paid, Sei EVM storage is permanent. This simplifies your application logic—no need to track rent-exempt minimums or worry about account closure.
Parallelization: Automatic vs Explicit
One of the biggest advantages of Sei for Solana developers is that parallelization is automatic.Solana: Explicit Account Declaration
On Solana, you must declare all accounts a transaction will touch upfront:Sei: Optimistic Parallelization
On Sei, you write normal Solidity—the runtime handles parallelization:Step 1: Set Up Your Development Environment
Install Required Tools
Configure for Sei
- Hardhat
- Foundry
hardhat.config.ts
.env file needed):Wallet Setup
Configure MetaMask or any EVM wallet with Sei:Step 2: Translate Your Solana Program
Common Pattern Translations
Initializing State
- Solana
- Sei EVM
Access Control
- Solana
- Sei EVM
Error Handling
- Solana
- Sei EVM
Events/Logs
- Solana
- Sei EVM
Step 3: Frontend Migration
SDK Comparison
Code Translation
- Solana (web3.js)
- Sei EVM (ethers.js)
Step 4: Testing Your Migrated Code
Test Framework Comparison
- Anchor Tests
- Hardhat Tests
Step 5: Deploy and Verify
Deploy to Testnet
Verify Contract
Common Migration Pitfalls
1. Expecting Rent
2. Manual Account Validation
3. Expecting Explicit Parallelization
4. Using Lamports Mental Model
Ecosystem Infrastructure
Available on Sei
Helpful Resources
Learning Solidity
- EVM with Foundry – Foundry setup guide and starter tutorial
- EVM with Hardhat – Hardhat setup guide and starter tutorial
- Solidity Resources – Curated solidity learning resources
- CryptoZombies – Interactive Solidity tutorial
- Solidity by Example – Pattern reference
Sei-Specific
- Divergence from Ethereum – Technical differences
- Optimizing for Parallelization – Performance patterns
- Ecosystem Contracts – Canonical addresses
Need Help?Join the Sei Tech Chat on Telegram for developer support. The community is active and helpful for migration questions.