Skip to content

lurq

lurq is a Rust UI toolkit with typed component builders, retained runtime state, reactive signals, GPU-backed rendering, and an in-app DevTools window.

The guides describe 0.41.1. Migration guides and dated performance reports retain their historical scope.

The docs are organized around the questions that come up while building:

  • Getting Started shows the feature flags, demo command, and the smallest app shape.
  • Migration To v0.13 covers replacing legacy modal APIs, popup workarounds, and overlay host assertions.
  • Mental Model explains how App, Tree, components, elements, layout, input, and render passes fit together.
  • Components covers props, mounting, keyed children, slots, and lifecycle.
  • Reactivity covers signals, stores, memos, effects, refs, contexts, and debug inspectability.
  • Layout covers constraints, row/column/stack, flex, scroll, absolute positioning, and clipping.
  • Theme covers palette, typography, radius, spacing, border size, shadow, and form theme roles, including application-defined extras.
  • Animation And Transforms covers transitions, keyframes, easing, transform composition, transform animation, and transformed text.
  • Styling And Events covers visual modifiers, hover/active/focus styles, cursor state, handlers, text selection, inputs, clipboard behavior, and drag and drop.
  • Focus And Keyboard Navigation covers focusable elements, tab_index, Tab scopes, modal focus traps, focused styles, and testing focus headlessly.
  • Forms covers form handles, field binding, submission, FormValues, and the Button component.
  • Routing covers declarative routes, nested layouts, links, params, guards, and history navigation.
  • Futures And Timers covers async data fetching, dependency-driven re-execution, streams, future actions, tokio integration, timeouts, and intervals.
  • Queries covers shared async reads, request deduplication, caching, and typed invalidation across components and trees.
  • Persistent Storage covers typed values that survive app restarts.
  • Internationalization covers translation resources, locale switching, interpolation, namespaces, and reactive re-rendering.
  • Modals covers render-flow modal overlays, targets, controlling visibility, and how popups handle a press outside them.
  • App Runtime covers App, Tree, render engine factories, windows, profiling, frame flow, and browser-style element lookup (get_element_by_id, typed interaction handles).
  • Window lifecycle and native menus covers close requests, confirmation dialogs, and macOS menus.
  • DevTools covers enabling the devtools feature, mounting the secondary window, inspecting components, and profiling renders.
  • MCP Server covers agent inspection, input, permissions, and custom tools.
  • Resources And Media covers fonts, raw and decoded images, SVGs, resources, and Markdown.
  • Canvas 2D covers persistent drawing, gradients, shadows, blur, blend modes, layers, and GPU limits.
  • Testing covers headless tests, feature-specific checks, and benchmarks.
  • Text Pipeline Optimization summarizes the current implementation and links to dated benchmark reports.

For API lookup, keep Ctx, Typed Component API, and Runtime And Retained Tree open.