Features
Everything SolScript compiles.
A complete picture of the language support, compiler output modes and tooling — accurate to what SolScript ships today (v0.1.1, beta).
Language features
State variables
uint8–uint256, int8–int256, bool, string, address, bytes, arrays and structs — mapped to the correct Solana account layout.
Mappings → PDAs
mapping(address => uint256) is converted to Program Derived Addresses automatically, with seeds and bump derivation handled for you.
Functions & visibility
public, internal, view, pure and payable functions compile to Anchor instructions and helper methods.
Modifiers
Custom modifiers with the _; placeholder — onlyOwner and friends work as you expect.
Events
Solidity events are emitted as Anchor events, ready for off-chain indexing.
Custom errors
error Name(params) with revert compiles to Anchor error codes with structured data.
Constructors
Constructors map to Anchor initialize instructions with the right account context.
Inheritance & interfaces
Single inheritance with the is keyword, plus interface / abstract contract definitions.
Compiler & output
Anchor mode
Generates human-readable Rust/Anchor source you can inspect, modify and audit before deploying.
Direct BPF mode
Optionally compile straight to Solana bytecode via LLVM 18 with solscript build --bpf.
Type checking
solscript check runs full semantic analysis — types, state access and control flow — without codegen.
SPL Token operations
Transfer, mint and burn are first-class; SolScript emits the correct SPL Token CPI calls.
Tooling
Browser WASM playground
A client-side WASM compiler with a Monaco editor, instant feedback and one-click devnet deploy via Phantom or Solflare.
CLI
solscript build, check and build --bpf — ready for local dev and CI.
VS Code extension
Language Server Protocol integration: real-time diagnostics, syntax highlighting and build/check commands.
Local project storage
The playground persists projects in the browser via IndexedDB — no account needed.
Two commands, both output modes
Type-check fast, then generate readable Anchor source or compile straight to BPF. The same contract, your choice of output.
# type-check without generating code
solscript check token.sol
# compile to readable Rust/Anchor
solscript build token.sol
# compile straight to BPF via LLVM 18
solscript build --bpf token.sol SolScript is part of Cryptuon's developer-tools portfolio.