Expand description
Windjammer UI Framework
A cross-platform UI framework for building web, desktop, and mobile applications.
§Features
- Reactive State Management - Signal, Computed, Effect
- Virtual DOM - Efficient diffing and patching
- Component Model - Clean, composable components
- Cross-Platform - Web (WASM), Desktop (Tauri), Mobile
- Server-Side Rendering - SSR with hydration
- Routing - Client-side navigation
§Example
use windjammer_ui::prelude::*;
use windjammer_ui::vdom::{VElement, VNode, VText};
use windjammer_ui::reactivity::Signal;
struct Counter {
count: Signal<i32>,
}
impl Counter {
fn new() -> Self {
Self { count: Signal::new(0) }
}
fn increment(&self) {
self.count.update(|c| *c += 1);
}
}Modules§
- app
- App runtime for mounting and running Windjammer UI applications
- component
- Component model and traits
- component_
runtime - Component runtime for direct DOM manipulation
- components
- Windjammer UI Component Library
- event_
handler - Type aliases for event handlers
- events
- Cross-platform event system
- platform
- prelude
- Prelude module with commonly used types and traits
- reactivity
- Fine-grained reactivity system for Windjammer UI
- reactivity_
optimized - Optimized reactivity system with performance improvements
- renderer
- Cross-platform renderer
- routing
- File-based routing system for all platforms
- runtime
- Component runtime - manages lifecycle, state, and re-rendering
- simple_
renderer - Simple UI renderer for basic elements This provides a minimal but functional UI rendering system
- simple_
vnode - Simple VNode implementation for generated component code
- ssr
- Server-Side Rendering (SSR) for web targets
- to_
vnode - ToVNode trait for converting components to VNode
- vdom
- Virtual DOM implementation
- vnode_
ffi - VNode FFI - Functions for constructing VNodes from Windjammer code
Attribute Macros§
- component
- Attribute macro for defining a UI component
Derive Macros§
- Props
- Derive macro for component props