#webb #protocol #blockchain #proposals

no-std webb-proposals

Webb Protocol Proposals Specification & Implementation (part of webb-rs SDK)

23 releases (4 breaking)

0.5.4 Aug 18, 2022
0.4.4 Jul 28, 2022
0.2.1 Mar 31, 2022

#1091 in Magic Beans

Download history 345/week @ 2023-01-26 260/week @ 2023-02-02 282/week @ 2023-02-09 453/week @ 2023-02-16 199/week @ 2023-02-23 355/week @ 2023-03-02 158/week @ 2023-03-09 134/week @ 2023-03-16 133/week @ 2023-03-23 168/week @ 2023-03-30 162/week @ 2023-04-06 203/week @ 2023-04-13 220/week @ 2023-04-20 235/week @ 2023-04-27 124/week @ 2023-05-04 275/week @ 2023-05-11

900 downloads per month
Used in webb-relayer

Apache-2.0

270KB
6K SLoC

Webb-rs

The Webb Core SDK for Rust
⚠️ Beta Software ⚠️


Downloading metadata from a Substrate node

Use the subxt-cli tool to download the metadata for your target runtime from a node.

  1. Install:
cargo install subxt-cli
  1. To Save the metadata of protocol-substrate: Run the release build of the protocol-substrate node, then on another terminal run:
subxt metadata -f bytes > ./metadata/protocol-substrate-runtime.scale
  1. To Save the metadata of dkg: Run the release build of the dkg node, then on another terminal run:
subxt metadata -f bytes > ./metadata/dkg-runtime.scale

Same goes for any future runtimes.

Note: This defaults to querying the metadata of a locally running node on the default http://localhost:9933/. If querying a different node then the metadata command accepts a --url argument.

  1. Generating the rust code from the metadata:
cargo build --features generate-substrate

Tip: See the build.rs file to see how everything is being generated.

Generating EVM Contracts

  1. Update any contracts inside the contracts directory.
  2. Run
cargo build --features generate-contracts

Tip: See the build.rs file to see how everything is being generated.

Safety

This crate uses #![deny(unsafe_code)] to ensure everything is implemented in 100% Safe Rust.

Contributing

Want to join us? take a look at some of these issues:

License

Licensed under Apache License v2.0.
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in this crate by you, as defined in the Apache license, shall be licensed as above, without any additional terms or conditions.

Dependencies

~1.2–3MB
~70K SLoC