Skip to content

Releases: salazarsebas/Quasar

v0.1.0 — First Public Release

Choose a tag to compare

@salazarsebas salazarsebas released this 08 Feb 23:29

Quasar v0.1.0

A declarative DSL that compiles .soro scripts into Soroban contract invocations on Stellar.

Features

  • Lexer & Parser — full .soro syntax support with line/column error reporting
  • Type systembool, u32, i32, u64, i64, u128, i128, u256, i256, string, symbol, bytes, address, vec, map
  • Constantsconst declarations with compile-time substitution
  • Interfacesuse "file.soroabi" as Alias with type-checked call Alias.method() syntax
  • Semantic validation — address checksum verification, duplicate detection, unused const warnings
  • Type checking — ABI-aware argument count, type compatibility, and "did you mean?" suggestions
  • JSON IR compiler — AST to structured JSON intermediate representation
  • XDR compiler — direct encoding to Stellar XDR transaction envelopes
  • Simulationquasar simulate against Soroban RPC (no signing required)
  • Full executionquasar run with signing, submission, and polling
  • ABI importquasar import <contract_id> fetches contract spec from the network
  • Formatterquasar fmt for consistent .soro file formatting

CLI Commands

quasar check <file>        Validate syntax and types
quasar compile <file>      Compile to JSON IR
quasar xdr <file>          Compile to Stellar XDR
quasar fmt <file>          Format a .soro script
quasar simulate <file>     Simulate against Soroban RPC
quasar import <contract>   Import contract ABI
quasar run <file>          Sign, submit, and poll
quasar version             Print version

Stats

  • 5 crates: quasar-syntax, quasar-check, quasar-compile, quasar-exec, quasar-cli
  • 303 tests across the workspace
  • Zero external dependencies in the syntax crate