Crate windjammer_ui

Crate windjammer_ui 

Source
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