Module store

Module store 

Source
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