Skip to main content

Crate rullst

Crate rullst 

Source
Expand description

Rullst Core Library

Re-exports§

pub use routing::Router;
pub use server::Server;
pub use config::AppConfig;
pub use config::DatabaseConfig;
pub use config::RullstConfig;
pub use config::SecurityConfig;
pub use htmx::HtmxRequest;
pub use htmx::HtmxResponse;
pub use htmx::render_page;
pub use cache::Cache;
pub use queue::Queue;
pub use queue::QueuedJobDetail;
pub use queue::Worker;
pub use scheduler::Scheduler;
pub use storage::Storage;
pub use storage::StorageDriver;
pub use storage::StorageError;
pub use validation::ValidatedForm;
pub use validation::ValidatedJson;
pub use validation::ValidationError;
pub use ws::WebSocket;
pub use ws::WsError;
pub use resilience::RateLimitConfig;
pub use resilience::RateLimiter;
pub use resilience::TrafficShield;
pub use resilience::TrafficShieldConfig;
pub use resilience::backpressure_middleware;
pub use resilience::rate_limit_middleware;
pub use ai::AiClient;
pub use ai::AiError;
pub use ai::AiProvider;
pub use ai::ChatBuilder;
pub use ai::Message as AiMessage;
pub use ai::VectorDocument;
pub use ai::VectorIndex;
pub use feature::DbFeatureDriver;
pub use feature::EnvFeatureDriver;
pub use feature::FeatureDriver;
pub use feature::FeatureManager;
pub use feature::MemoryFeatureDriver;
pub use feature::TomlFeatureDriver;
pub use multitenant::TenantConfig;
pub use multitenant::TenantLayer;
pub use multitenant::TenantService;
pub use multitenant::TenantStrategy;
pub use multitenant::tenant_layer;
pub use testing::TestApp;
pub use testing::TestRequestBuilder;
pub use testing::TestResponse;
pub use capital::BillingProvider;
pub use capital::LemonSqueezyProvider;
pub use capital::StripeProvider;
pub use capital::SubscriptionStatus;
pub use capital::WebhookEvent;

Modules§

ai
AI integrations (e.g. Chat, Vector indices, Embeddings).
artisan
Artisan command-line migrations and seed execution helpers.
async_runtime
Re-exported underlying asynchronous engine (Tokio).
cache
Rullst Cache System (rullst::cache)
capital
Rullst Capital
client
Edge client components rendering module.
config
Rullst application and server configuration models.
db
Rullst Database Extensions (rullst::db)
edge
Rullst Edge Runtime (rullst::edge)
email_client
Re-exported email client engine (Lettre).
error_console
HTML visual logging and runtime console for development mode.
feature
Feature flagging management and drivers.
horizon
Background job queues monitoring panel (Horizon).
html
Fast compile-time HTML rendering utilities.
htmx
HTMX helpers for rapid reactive UI design.
live
Live state synchronization and server-push connection handlers.
multitenant
Multitenancy request routing and tenant state isolation layers.
queue
Rullst Queue System (rullst::queue)
resilience
Network and service resilience (rate limits, traffic shield, load shedding).
response
Standard HTTP response types and helpers.
routing
High-performance application routers built on Axum.
runtime
Internal asynchronous runtime wrappers.
scheduler
Rullst Task Scheduler (rullst::scheduler)
security
CSRF tokens, CORS, and response headers security policies.
server
Rullst HTTP web server core engine.
storage
File and cloud storage abstraction layer.
telemetry
Rullst OpenTelemetry and Tracing.
testing
Scaffolding tools for robust integration testing.
validation
Strongly-typed request validation extractors.
web
Web server engine re-exports (Axum, Tower, Tower-HTTP).
ws
WebSocket live connection and messaging system.

Macros§

artisan
Standard migration and seeding bootstrap macro for Rullst.
html
A macro for writing HTML inline in Rust. It compiles down to highly optimized string concatenations at compile time, and automatically escapes dynamic variables to prevent XSS.
routes
Declarative macro for building a Router from a list of HTTP route definitions.

Structs§

Orm
Orm configuration structure

Traits§

RullstModel
The core trait that all Orm models will implement via #[derive(Orm)]
Validate
This is the original trait that was implemented by deriving Validate. It will still be implemented for struct validations that don’t take custom arguments. The call is being forwarded to the ValidateArgs<'v_a> trait.

Attribute Macros§

async_trait
island
Proc macro attribute to define a Wasm Island client component.
live_component
Proc macro attribute to define a Live Component. Automatically implements the LiveComponent trait and wires #[live_event] methods.
live_event
Marker attribute for events handled by a Live Component.
memoize
A macro for intelligent caching of component renders or database queries. It wraps a function, caching the returned output based on the function’s arguments. If the function is called again with the same arguments, it returns the cached HTML immediately.
route
Defines a Dual-Target route. Generates an HTML responder for browsers and a JSON responder for mobile applications natively.
server_function
Defines a Server Function for transparent RPC. Functions annotated with #[server_function] can be called directly from Wasm frontend code, and the framework automatically generates the HTTP fetch bridge.

Derive Macros§

Orm
Validate