Expand description
§Widget Intelligence
A Rust library for intelligent widget suggestion and learning based on user behavior patterns.
This crate provides functionality for:
- Learning from widget usage patterns
- Suggesting widget values based on similarity
- Persistent storage using Sled database
- Integration with Tauri applications
- Extracting widget information from Kyma JSON data
§Features
- Similarity Engine: Core algorithm for finding similar widgets based on multiple features
- Persistence: Sled-based storage for long-term learning
- Kyma Integration: Extract widget data from Kyma JSON format
- Tauri Commands: Ready-to-use Tauri commands for frontend integration
§Example
use widget_intelligence::{WidgetSuggestionEngine, Widget};
let mut engine = WidgetSuggestionEngine::new();
let widget = Widget {
label: Some("Master Volume".to_string()),
minimum: Some(0.0),
maximum: Some(127.0),
current_value: Some(95.0),
is_generated: Some(false),
display_type: Some("slider".to_string()),
};
engine.store_widget(widget);
let suggestions = engine.get_suggestions(&Widget {
label: Some("Volume".to_string()),
..Default::default()
}, 5);
Re-exports§
pub use similarity_engine::FilteredWidgetDescription;
pub use similarity_engine::Preset;
pub use similarity_engine::Suggestion;
pub use similarity_engine::ValueStats;
pub use similarity_engine::Widget;
pub use similarity_engine::WidgetFeatures;
pub use similarity_engine::WidgetRecord;
pub use similarity_engine::WidgetSuggestionEngine;
pub use similarity_engine::WidgetValue;
pub use persistence::ExportData;
pub use persistence::PersistentWidgetSuggestionEngine;
pub use persistence::SledPersistenceError;
pub use persistence::SledPersistenceManager;
pub use kyma_extractor::KymaWidgetExtractor;
pub use kyma_extractor::WidgetMetadata;
pub use tauri_examples::IntelligenceStats;
pub use tauri_examples::PresetData;
pub use tauri_examples::StandaloneIntelligenceService;
pub use tauri_examples::SuggestionResponse;
pub use tauri_examples::WidgetInsightResponse;
Modules§
Functions§
- create_
test_ widget - Utility function to create a simple widget for testing
- init_
intelligence_ system - Initialize the widget intelligence system with a database path
- init_
standalone_ service - Initialize the standalone intelligence service
- validate_
widget - Utility function to validate widget data