Skip to main content

Crate bext_plugin_api

Crate bext_plugin_api 

Source
Expand description

bext-plugin-api: trait definitions and shared types for the bext plugin system.

This crate is deliberately lightweight (only serde + serde_json) so that WASM guest crates can depend on it without pulling in bext-core.

Re-exports§

pub use auth::AuthPlugin;
pub use authz_policy::AuthzPolicyPlugin;
pub use cache::CacheBackend;
pub use feature_flag::FeatureFlagPlugin;
pub use i18n::I18nPlugin;
pub use lifecycle::LifecyclePlugin;
pub use locking::LockingPlugin;
pub use mailer::MailerPlugin;
pub use middleware::MiddlewarePlugin;
pub use scheduled::ScheduledPlugin;
pub use search::SearchClientPlugin;
pub use session::SessionPlugin;
pub use storage::StorageClientPlugin;
pub use tracer::TracerPlugin;
pub use transform::TransformPlugin;
pub use webhook::WebhookPlugin;

Modules§

auth
Auth capability trait. See plan/ecosystem/02-capabilities.md (Auth section).
authz_policy
AuthzPolicy capability trait. See plan/ecosystem/02-capabilities.md §AuthzPolicy.
cache
Cache backend plugin trait and types for the two-tier (L1 in-memory / L2 plugin) ISR cache, including CacheEntry, lookup status, and tag-based invalidation.
feature_flag
Feature-flag capability trait and types.
i18n
I18n capability trait. See plan/ecosystem/02-capabilities.md §I18n.
lifecycle
Lifecycle plugin trait for hooks that fire at server start, stop, deploy, and other key events. All methods use JSON strings for WASM ABI compatibility.
locking
Locking capability trait. See plan/ecosystem/02-capabilities.md §Locking.
mailer
Mailer capability trait. See plan/ecosystem/02-capabilities.md.
middleware
Middleware plugin trait and types for request/response interception. Plugins can inspect or modify requests and optionally short-circuit with a custom PluginResponse.
scheduled
Scheduled capability trait and types for cron-style background work.
search
Search-client capability trait and types.
session
Session capability trait and types.
storage
StorageClient capability trait and types for blob / object stores.
tracer
Tracer capability trait for distributed-tracing exporters.
transform
Source-code transform plugin trait for the build pipeline. Plugins can rewrite file contents at compile time (e.g. macro expansion, code injection) and run in priority order alongside built-in transforms.
types
Shared types for the plugin API: PluginManifest, PluginCapability, priority constants, and fuel budget defaults for WASM execution.
webhook
Webhook capability trait. See plan/ecosystem/02-capabilities.md (Webhook section).