/sigma-rust

Alternative and simple implementation of ErgoTree interpreter

Primary LanguageRustCreative Commons Zero v1.0 UniversalCC0-1.0

Coverage Status

Rust implementation of ErgoScript cryptocurrency scripting language.

See Architecture for high-level overview.

Crates

ergo-lib Latest Version Documentation

Overarching crate exposing wallet-related features: chain types (transactions, boxes, etc.), JSON serialization, box selection for tx inputs, tx builder and signing. Exports other crates API, probably the only crate you'd need to import.

ergotree-interpreter Latest Version Documentation

ErgoTree interpreter

ergotree-ir Latest Version Documentation

ErgoTree IR and serialization.

ergoscript-compiler Latest Version Documentation

ErgoScript compiler.

sigma-ser Latest Version Documentation

Ergo binary serialization primitives.

Bindings:

Changelog

See CHANGELOG.md.

Usage Examples

To get better understanding on how to use it in your project check out how its being used in the following projects:

Rust:

TS/JS:

Examples:

Also take a look at tests where various usage scenarios were implemented.

Contributing

See Contributing guide.

Feel free to join the Ergo Discord and ask questions on #sigma-rust channel.