valence_core 0.1.3

Core module used across plug-ins for A-Block Valence nodes
Documentation

🎉 Plug-ins Using valence_core

Here you can find awesome plug-ins already using valence_core to boost their Valence nodes:

If you'd like to have your plug-in added to the list, please open a PR and we'll be happy to take a look!

..

How to Use

valence_core is designed to be used as a core crate for Valence functionality that is common across all node types and plug-ins. It is not designed to be used as a standalone crate, and will not compile as such.

..

🔧 Installation

If you have cargo-add installed, you can simply run the following command:

cargo add valence_core

Otherwise, add the following to your Cargo.toml file:

[dependencies]
valence_core = "0.1.2"

..

🏎️ Use in Plug-ins

The valence_core library exposes a few common methods and functionalities that are useful if you're either using plug-ins or writing your own. This core functionality includes:

  • api: The module here contains most of the structs and enums that are used to communicate between nodes and plug-ins. This includes the JsonReply, ApiErrorResponse and APIResponseStatus structs, as well as functions for JSON serialisation and Warp API replies.

  • db: The module here contains all the common code associated with data storage. This includes the KvStoreConnection trait, which ensures consistent interfacing with data handlers across the Valence ecosystem

  • crypto: The module here ensures consistency in the handling of cryptography across the Valence ecosystem. If you want to do anything with cryptography in your plug-in, you should use the functions here.

..

Further Work

  • Add tests
  • Consider abstraction structure for API and DB handling
  • Add traces

..