28 releases (breaking)

0.23.1 Dec 2, 2023
0.22.0 Oct 13, 2023
0.20.0 May 12, 2023
0.19.0 Feb 8, 2023
0.4.0 Mar 22, 2021

#123 in Programming languages

Download history 1/week @ 2023-12-18 2/week @ 2023-12-25 6/week @ 2024-02-12 16/week @ 2024-02-19 43/week @ 2024-02-26 12/week @ 2024-03-04 20/week @ 2024-03-11 15/week @ 2024-03-18 11/week @ 2024-03-25 495/week @ 2024-04-01

544 downloads per month
Used in 6 crates (2 directly)

CC0 license

1MB
20K SLoC

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.


lib.rs:

ErgoScript compiler pipeline

Dependencies

~15MB
~295K SLoC