Expand description
Module Development APIs
Provides APIs for developing modules that extend blvm-node.
This module re-exports the necessary types and traits from blvm-node to provide
a clean, developer-friendly interface for module development.
The wasm submodule (when wasm-modules is enabled) is node-independent:
embedders implement WasmStorage/WasmTree to bridge to their storage.
Re-exports§
pub use bootstrap::ModuleBootstrap;pub use bootstrap::ModuleConfig;pub use database::open_module_db;pub use database::run_migrations;pub use database::run_migrations_down;pub use database::run_migrations_with_down;pub use database::Migration;pub use database::MigrationContext;pub use database::MigrationDown;pub use database::MigrationUp;pub use module_db::ModuleDb;pub use runner::run_async;pub use runner::run_module;pub use runner::run_module_with_setup;pub use runner::run_module_with_tick;pub use runner::InvocationContext;pub use storage::DatabaseStorageAdapter;pub use storage::ModuleStorage;pub use storage::ModuleStorageDatabaseBridge;pub use storage::ModuleTree;pub use ipc::protocol::*;pub use traits::*;
Modules§
- bootstrap
- Module bootstrap from environment.
- cli_
args - CLI argument parsing and type coercion for module commands.
- database
- Module database utilities
- ipc
- IPC Communication
- manifest
- Module Manifest
- module_
db - Standard module storage API.
- prelude
- Prelude for module development
- runner
- Module runner and invocation context.
- security
- Module Security
- storage
- Module storage abstraction.
- traits
- Module Traits
Structs§
- Module
IpcClient - IPC client for modules to communicate with node
- Module
Manifest - Module manifest (module.toml structure)
- Permission
Set - Set of permissions for a module
Enums§
- Permission
- Permission types that modules can request