Expand description
Yewdux state management stores
Global state management using Redux-like patterns.
§Available Stores
- SkillsStore: Installed skills, filtering, sorting, selected skill
- ExecutionsStore: Execution history, active execution, streaming output
- SettingsStore: User preferences, persisted to localStorage
- UiStore: Transient UI state (sidebar, notifications, modals)
§Usage
ⓘ
use yewdux::prelude::*;
use crate::store::{SkillsStore, SkillsAction};
#[function_component(MyComponent)]
fn my_component() -> Html {
let (skills, dispatch) = use_store::<SkillsStore>();
let on_search = {
let dispatch = dispatch.clone();
Callback::from(move |query: String| {
dispatch.apply(SkillsAction::SetSearchQuery(query));
})
};
html! {
// ...
}
}Re-exports§
pub use executions::ActiveExecution;pub use executions::ExecutionEntry;pub use executions::ExecutionStatus;pub use executions::ExecutionsAction;pub use executions::ExecutionsStore;pub use settings::ApiSettings;pub use settings::EmbeddingProvider;pub use settings::OutputFormat;pub use settings::SearchSettings;pub use settings::SettingsAction;pub use settings::SettingsStore;pub use settings::Theme;pub use settings::VectorBackend;pub use skills::InstanceInfo;pub use skills::ParameterInfo;pub use skills::SkillDetail;pub use skills::SkillRuntime;pub use skills::SkillSortBy;pub use skills::SkillStatus;pub use skills::SkillSummary;pub use skills::SkillsAction;pub use skills::SkillsStore;pub use skills::ToolInfo;pub use ui::CommandPaletteState;pub use ui::ModalState;pub use ui::ModalType;pub use ui::Notification;pub use ui::NotificationLevel;pub use ui::UiAction;pub use ui::UiStore;
Modules§
- executions
- Executions state store
- settings
- Settings state store
- skills
- Skills state store
- ui
- UI state store