Sigma Rust#
sigma-rust is an alternative and simple implementation of ErgoTree interpreter and transaction-building tools.
See Architecture for high-level overview.
Contributing#
There is a labelled issues tab on sigma-rust that anyone can pick up. If you are working on something, leave a comment, so others know. @greenhat
is ready to assist with anyone interested on Discord.
Crates#
ErgoScript compiler.
ErgoTree IR and serialization.
ErgoTree interpreter.
Chain types (transactions, boxes, etc.), JSON serialization, box selection for tx inputs, tx creation and signing.
Ergo binary serialization primitives.
Bindings:
- ergo-lib-wasm(Wasm)
- ergo-lib-wasm-browser(JS/TS)
- ergo-lib-wasm-nodejs(JS/TS)
- ergo-lib-ios(Swift)
- ergo-lib-jni(Java)
- ergo-lib-c (C)
- sigma_rb(Ruby)
Usage Examples#
To get better understanding on how to use it in your project check out how its being used in the following projects:
- Ergo Headless dApp Framework;
- Ergo Node Interface Library;
- Oracle Core;
- AgeUSD Stablecoin Protocol;
- Ergo SDK (Wasm bindings);
- Yoroi wallet (Wasm bindings);
- Ergo Desktop Wallet (Wasm bindings);
- Create transaction demo (TS)
- Address generation demo (TS)
Also take a look at tests where various usage scenarios were implemented.