Quasar is aDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/blueshift-gg/quasar/llms.txt
Use this file to discover all available pages before exploring further.
no_std Solana program framework built for developers who need maximum compute-unit efficiency without sacrificing ergonomics. Account data is pointer-cast directly from the SVM input buffer — no deserialization, no heap allocation, no copies. You write #[program], #[account], and #[derive(Accounts)] with Anchor-familiar syntax, and the generated code compiles down to sBPF that rivals hand-written assembly.
Quickstart
Scaffold your first Quasar program and deploy it in minutes.
Core Concepts
Understand zero-copy accounts, the dispatch model, and how Quasar differs from Anchor.
Account Types
Explore every account wrapper: Account, Signer, Program, Sysvar, and more.
CLI Reference
Full reference for every
quasar subcommand — init, build, test, deploy, profile, and more.Why Quasar?
Solana programs run in a compute-constrained environment. Every deserialization, allocation, and copy costs CUs. Quasar eliminates that overhead by treating the SVM input buffer as the authoritative source — account structs are pointer-cast directly from the runtime memory region using#[repr(C)] layouts, so field access is as cheap as reading a raw pointer.
Zero Copies
Accounts are cast in-place from the SVM buffer. No
borsh::deserialize, no Vec allocations.Anchor Ergonomics
Familiar
#[derive(Accounts)], constraint attributes, and Ctx<T> context type.CU Profiler
quasar profile gives a flamegraph of per-function CU cost for every instruction.The Quasar Workspace
Quasar is organized into focused crates:| Crate | Purpose |
|---|---|
quasar-lang | Account types, CPI builder, events, sysvars, error handling |
quasar-derive | Proc macros: #[program], #[account], #[derive(Accounts)], #[event], #[error_code] |
quasar-spl | SPL Token / Token-2022 CPI and zero-copy account types |
quasar-profile | Static CU profiler with flamegraph output |
cli | quasar CLI — init, build, test, deploy, profile, dump, lint |
Get Started
Core Framework
Accounts
How
#[account] defines on-chain data types with discriminators and zero-copy layouts.Instructions
The
#[instruction] attribute, #[derive(Accounts)], and the Ctx<T> handler context.PDAs
PDA derivation with
#[derive(Seeds)] and optimized verify_program_address.CPI
The const-generic
CpiCall and dynamic CpiDynamic builders for cross-program invocations.Events
Log-based (
emit!) and spoofing-resistant self-CPI (emit_cpi!) event emission.Errors
Define typed program errors with
#[error_code] and QuasarError built-ins.