Guides
Sequential chapters that build on each other. Start here if you're new to Plushie.
- Introduction - what Plushie is and how it works
- Getting Started - installation, binary setup, first run
- Your First App - building a counter with the Elm architecture
- The Development Loop - hot reload, IEx, debugging
- Events - widget events, keyboard, mouse, pattern matching
- Lists and Inputs - dynamic lists, text inputs, forms
- Layout - rows, columns, containers, responsive sizing
- Styling - themes, colors, fonts, per-widget style overrides
- Animation and Transitions - transitions, springs, tweens, easing
- Subscriptions - timers, global key/mouse events, window events
- Async and Effects - async tasks, streams, platform effects
- Canvas - shapes, layers, transforms, interactive elements
- Custom Widgets - composing widgets, canvas widgets, native Rust widgets
- State Management - routing, undo/redo, selection, data pipelines
- Testing - test framework, backends, selectors, screenshots
- Shared State - multi-session apps over SSH
Reference
Lookup material organized by topic. Each page is self-contained.
- Accessibility - AccessKit integration, roles, labels, keyboard navigation
- Animation - transitions, springs, sequences, easing curves, animatable props
- App Lifecycle - init/update/view callbacks, supervision, startup sequence
- Built-in Widgets - every widget with props, events, and examples
- Canvas - shapes, layers, groups, transforms, clips, gradients
- Commands and Effects - async, focus, scroll, window ops, platform effects
- Composition Patterns - reusable components, overlays, context menus, multi-window
- Configuration - application config, environment variables, build settings
- Custom Widgets - the widget macro, props, events, state, native crates
- DSL - macro internals, block forms, canvas scope, container scope
- Events - event types, fields, bubbling, scoped ID matching
- Mix Tasks - build, download, gui, inspect, script, replay
- Scoped IDs - ID scoping rules, scope matching, command paths
- Subscriptions - timer, keyboard, mouse, window, custom subscriptions
- Testing - test case setup, helpers, backends, screenshots, CI
- Themes and Styling - built-in themes, custom palettes, style maps
- Windows and Layout - window props, sizing, pane grids, multi-window
- Wire Protocol - MessagePack/JSON framing, message types, transport modes