witnet-rust is an open source implementation of the Witnet Decentralized Oracle Network protocol written in Rust.
witnet-rust implements many different components intended to work in the Witnet ecosystem:
- node : a fully validating and archival Witnet blockchain node.
- wallet : a separate server for managing Witnet keys and abstracting the complexity of creating transactions.
- crypto : library implementing all the crypto-related operations used by Witnet, including signatures, hash functions and verifiable random functions.
- rad : an interpreter for RADON scripts included in Witnet data requests.
- storage : the convenient local storage solution used by
nodeandwallet. - p2p : modules for managing peer sessions and connections.
- data_structures : data structures common to all other components.
- validations : functions that validate Witnet protocol data structures.
- schemas : Protocol Buffer schemas for the Witnet protocol.
Members of the Witnet project also develop and maintain these other related Rust crates:
- protobuf-convert : macros for convenient serialization of Rust data structures into/from Protocol Buffers.
- async-jsonrpc-client : event-driven JSON-RPC client with support for multiple transports
DISCLAIMER: This is experimental software running on experimental network protocols. Be careful!
- All the main components are in placeβbut they need yet to be battle tested before mainnet.
Testnet-1is live. Here's the roadmap and this is how to run a node.- The Witnet community is doing its best to make
witnet-rustrock solid as soon as possible. - Contributions are more than welcome.
Detailed installation instructions can be found in the installation guide.
- To get involved, read our contributing guide.
- You can find us on Discord.
Witnet project's official documentation is available at docs.witnet.io.
Witnet-rust is published under the GNU General Public License v3.0.