All pages
Powered by GitBook
1 of 1

Loading...

Welcome

Private by Default. Familiar by Design.

Seismic is an EVM blockchain with native on-chain privacy. Write Solidity. Deploy with Foundry. Interact with Viem. The only difference: your users' data stays private.


One letter changes everything

The difference between a public ERC20 and a private SRC20 is one letter:

// Standard ERC20 — balances visible to everyone
mapping(address => uint256) public balanceOf;

function transfer(address to, uint256 amount) public {
    balanceOf[msg.sender] -= amount;
    balanceOf[to] += amount;
}
// Seismic SRC20 — balances shielded by default
mapping(address => suint256) balanceOf;    // uint256 → suint256

function transfer(address to, suint256 amount) public {  // uint256 → suint256
    balanceOf[msg.sender] -= amount;
    balanceOf[to] += amount;
}

The s prefix tells the Seismic compiler to shield the underlying value. Observers see 0x00...0 instead of actual balances and amounts. Everything else — the Solidity syntax, the EVM execution model, the deployment flow — stays exactly the same.


What you can build

  • Shielded tokens — ERC20s where balances and transfer amounts are hidden from observers

  • Confidential DeFi — AMMs and lending protocols where positions, prices, and liquidation thresholds are shielded

  • Compliant finance — Privacy with built-in access control so regulators can verify without exposing user data

  • Private voting — On-chain governance where votes are secret until tallied


3-minute quickstart

Already have Rust and the Seismic tools installed?

git clone "https://github.com/SeismicSystems/seismic-starter.git"
cd seismic-starter/packages/contracts
sforge test -vv

You just ran shielded contract tests locally. See the full quickstart for next steps.


Find what you need

I want to...
Go to

Understand why Seismic exists

Why Seismic

See how it works under the hood

How Seismic Works

Set up my dev environment

Installation

Run my first shielded contract

Build a complete app step by step

Build a shielded ERC20 token

Learn about shielded types

Integrate a frontend

Deploy to testnet

Understand the transaction lifecycle

Run a node


Pre-requisite knowledge

Our documentation assumes some familiarity with blockchain app development. Before getting started, it'll help if you're comfortable with:

  • Solidity

  • Foundry

  • Viem

If you're new to blockchain app development or need a refresher, we recommend starting out with the CryptoZombies tutorial.


Work with us

If you might benefit from direct support from the team, please don't hesitate to reach out to dev@seismic.systems. We pride ourselves in fast response time.

You can also check out our X account for the latest updates, or join our Discord community.

Quickstart
Clown Beatdown Tutorial
SRC20 Tutorial
Shielded Types
Client Libraries
Migrating from Ethereum
Seismic Transaction
Node Operator FAQ