Context
QueryaMotion foundation shipped in 0.4.4. After shell UX #339 (on dev / planned 0.4.11), tokens cover toast/tab strip/dialogs/trees, but major shell transitions are still hard-cuts.
Design / plan: Obsidian 06 — Планирование/Fluid morphing и QueryaMotion (based on dev post-#339).
Goal
Make the desktop shell feel continuous (morphing), without rewriting shadcn or blocking the 0.4.11 release.
Prefer: land after 0.4.11 packaging, or small non-blocking PRs on dev if release is delayed.
Workstreams
Phase A — Primitives (lib/core/motion/)
Phase B — Shell morphing
Phase C — Guardrails
Non-goals
- Animating virtualized grid rows on scroll
- Replacing shadcn / expanding
third_party for motion
- Rust core (parallel research track)
Depends on
Context
QueryaMotion foundation shipped in 0.4.4. After shell UX #339 (on
dev/ planned 0.4.11), tokens cover toast/tab strip/dialogs/trees, but major shell transitions are still hard-cuts.Design / plan: Obsidian
06 — Планирование/Fluid morphing и QueryaMotion(based ondevpost-#339).Goal
Make the desktop shell feel continuous (morphing), without rewriting shadcn or blocking the 0.4.11 release.
Prefer: land after 0.4.11 packaging, or small non-blocking PRs on
devif release is delayed.Workstreams
Phase A — Primitives (
lib/core/motion/)QueryaFadeSlide(enter/exit + offset)QueryaHoverSurface(unified hover)QueryaSwitchingBody(preserve mounted children like CrossFadeStack)QueryaStagger(first-paint only, capped)disableAnimationsPhase B — Shell morphing
workspace_panel/workspace_empty_hero)querya_tab_strip)Phase C — Guardrails
docs/perf-baseline.mdscenarios @ 120 HzDurationfor animationsNon-goals
third_partyfor motionDepends on
dev)