17 releases (breaking)

0.27.1 Dec 2, 2023
0.26.0 Oct 13, 2023
0.24.0 May 12, 2023
0.23.0 Feb 8, 2023
0.15.0 Mar 8, 2022

#103 in Math

Download history 6/week @ 2024-02-12 9/week @ 2024-02-19 51/week @ 2024-02-26 14/week @ 2024-03-04 31/week @ 2024-03-11 17/week @ 2024-03-18 18/week @ 2024-03-25 62/week @ 2024-04-01 10/week @ 2024-04-08 12/week @ 2024-04-15 20/week @ 2024-04-22

107 downloads per month
Used in 11 crates (via ergotree-interpreter)

CC0 license

110KB
787 lines

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:

Implementation of finite field arithmetic and polynomial interpolation/evaluation in Galois field GF(2^192).

Dependencies

~1.4–2.5MB
~55K SLoC