One Language. Every High-Performance Chain.

SolScript compiles Solidity into native Solana BPF programs. Bring the largest smart-contract developer base — the millions who write Solidity — to Solana without a Rust rewrite. As on-chain activity consolidates onto a few fast chains, you write in one language and ship across them.

Solidity → Solana BPF Chain-abstraction tooling Auto PDA mapping Anchor-compatible Browser playground Open source · MIT
0
lines of Rust to write
Solidity in, Anchor out
2
output modes
Anchor source or direct BPF
WASM
browser compiler
compile client-side, no backend
MIT
open source
compiler · CLI · playground · VS Code

What is SolScript?

Chain-abstraction tooling: Solidity in, native Solana out.

SolScript is an open-source (MIT) compiler framework that lets you write Solana smart contracts in familiar Solidity syntax. It parses Solidity-style source, type-checks it, and generates standard Rust/Anchor code — or compiles directly to Solana BPF via LLVM. Solidity mappings become Solana Program Derived Addresses (PDAs) automatically, so you never touch seed or bump derivation by hand.

As on-chain activity consolidates onto a few high-performance chains, teams want one language across them instead of a rewrite per runtime. Solana is fast and cheap, but native development requires Rust — and the smart-contract talent pool is overwhelmingly Solidity-native. SolScript lets the millions of developers who already know Solidity build on Solana with the knowledge they have, and the generated Anchor code is fully auditable and deployable with standard Solana tooling.

  • Familiar syntax. Write contracts in Solidity — state variables, mappings, events, modifiers, inheritance.
  • Auditable output. Generates readable Rust/Anchor source you can inspect, modify and audit before deploying.
  • Zero install. A browser WASM compiler compiles and deploys to devnet from the playground — no backend.

Problem → solution

Closing the gap between the Solidity talent pool and Solana.

Four friction points stop Solidity developers from shipping on Solana. SolScript removes each one — so language, not runtime, is where your team's skills live.

A new chain means a new language

The problem

Solana is fast and cheap, but native development is in Rust and Anchor. Most smart-contract developers know Solidity from Ethereum — that knowledge does not transfer, so expanding to Solana usually means retraining or rehiring an entire team.

SolScript's approach

Write contracts in Solidity syntax you already know. SolScript compiles them to native Solana programs, so one team and one language reach more chains — no Rust rewrite.

SolScript vs Anchor →

Solidity has no mappings on Solana

The problem

Solana has no mapping type — it uses Program Derived Addresses (PDAs). Porting a Solidity mapping by hand means managing seeds and bump derivation for every key.

SolScript's approach

SolScript converts mapping(address => uint256) into PDA-based account lookups automatically, deriving the correct seeds and bumps for you.

How PDA mapping works →

Compiled binaries are opaque

The problem

Tools that compile Solidity straight to BPF bytecode give you a binary you cannot read or audit line by line before it holds value.

SolScript's approach

SolScript generates standard, human-readable Rust/Anchor source. Inspect it, modify it, and audit it with the tools your team already trusts.

How compilation works →

Setup gets in the way of learning

The problem

Toolchains, local validators and wallet config are a wall between "I want to try this" and a deployed contract.

SolScript's approach

The browser playground runs a WASM-compiled SolScript compiler client-side — compile instantly and deploy to devnet with Phantom or Solflare, no install.

Open the playground →

Solidity Syntax, Solana Performance

Write a token contract in Solidity. Deploy it to Solana.

token.sol
contract Token {
    string public name;
    string public symbol;
    uint256 public totalSupply;
    mapping(address => uint256) public balanceOf;

    event Transfer(address indexed from, address indexed to, uint256 value);

    constructor(string memory _name, string memory _symbol, uint256 _supply) {
        name = _name;
        symbol = _symbol;
        _mint(msg.sender, _supply);
    }

    function transfer(address to, uint256 amount) public returns (bool) {
        balanceOf[msg.sender] -= amount;
        balanceOf[to] += amount;
        emit Transfer(msg.sender, to, amount);
        return true;
    }
}

What SolScript Does

  • 1. Parses your Solidity-style contract
  • 2. Converts mapping to Solana PDAs
  • 3. Generates Rust/Anchor code
  • 4. Deploys to Solana devnet, testnet, or mainnet
Try This Example in the Playground

How it works

From Solidity source to a Solana program.

SolScript parses your contract, type-checks it, and generates either readable Anchor/Rust or BPF bytecode — ready to deploy to devnet, testnet or mainnet.

Solidity source contract.sol Parse AST Type check semantic analysis Code gen mapping → PDA Anchor / Rust auditable source BPF bytecode via LLVM 18 Deploy devnet · mainnet

How SolScript Compares

Choose the right tool for your Solana development workflow.

Feature SolScript Solang Anchor (Rust) Neon EVM
Language Solidity Solidity Rust Solidity
Approach Transpiler LLVM Compiler Native EVM Emulation
Auto PDA Mapping Yes Manual Manual N/A
Auditable Output Rust source code Binary only Native Rust EVM bytecode
Browser Playground Yes (WASM) No No No
Native Solana Perf Yes Yes Yes Emulated

Frequently Asked Questions

What is SolScript?
SolScript is a compiler that lets you write Solana smart contracts using Solidity syntax. It bridges the gap between Ethereum and Solana development by compiling familiar Solidity-style code into native Solana BPF programs.
Can I deploy Solidity contracts to Solana?
Not directly — Solana uses a different virtual machine (BPF) than Ethereum (EVM). SolScript compiles Solidity-style syntax into native Solana programs. The syntax is familiar, but the output is a Solana BPF program with full Anchor compatibility.
Is SolScript free to use?
Yes. SolScript is fully open source under the MIT license. The compiler, playground, CLI tool, and VS Code extension are all free.
Do I need to know Rust to use SolScript?
No. SolScript is designed so you never need to write Rust. You write Solidity-style code, and SolScript generates the Rust/Anchor code for you. However, understanding the generated code is helpful for advanced debugging.
How do Solidity mappings work on Solana?
SolScript automatically converts Solidity mappings to Solana Program Derived Addresses (PDAs). When you write mapping(address => uint256) public balanceOf, SolScript creates PDA accounts using the key as a seed. This is handled transparently.
What Solidity features are supported?
SolScript supports state variables, mappings, functions (public, internal, view, pure), modifiers, events, custom errors, constructors, single inheritance, interfaces, and SPL Token operations. EVM-specific features like assembly, delegatecall, and selfdestruct are not applicable to Solana.
Why does a Solidity-to-Solana compiler matter in 2026?
On-chain activity is consolidating onto a handful of high-performance chains, and Solana is one of the fastest and cheapest. But the smart-contract talent pool is overwhelmingly Solidity-native. SolScript is chain-abstraction developer tooling: it lets a Solidity team target Solana with the language they already know, instead of hiring or retraining for Rust. One language, more chains you can ship to.
Is SolScript the same as a cross-chain bridge or messaging layer?
No. SolScript operates at the source-language layer, not the runtime or interop layer. It does not bridge assets or pass messages between chains — it lets you author programs for Solana in Solidity. Think of it as portability for your codebase and your team, not portability for tokens at runtime.

Start Building on Solana Today

No Rust required. Write your first Solana contract in Solidity syntax.