Sora UI

Roadmap

Upcoming development schedule, milestones, and release strategy for Sora UI animated components, Base UI foundations, Radix UI suite, and Headless UI adapters.

Made by Axyl

The Sora UI Roadmap outlines upcoming milestones, priority tiers, and animation engineering goals. Our architecture follows a phased rollout prioritizing Base UI first, followed by Radix UI, and expanding into other headless libraries and multi-framework ecosystems.

Release Strategy & PriorityPhase 1: Base UI • Phase 2: Radix UI • Phase 3: Other Headless

Base UI First, Radix UI Next, Multi-Headless Architecture

We are prioritizing all 13 core Base UI animated components to deliver a complete, modern, accessible foundation. Radix UI animation primitives follow in Phase 2, with React Aria, Ark UI, and multi-framework expansions scheduled next.

Base UI Progress (Phase 1)
3 / 14(21%)
Radix UI Suite (Phase 2)
3 / 9
Target Frameworks
React • JS • Vue
Open Source
100% Free / MIT

MotionScore™ Quality Framework

Every Sora UI component is benchmarked against strict physics, accessibility, and performance metrics.

STier S
S-Tier • Compositor Only

Animations run entirely on the GPU compositor thread (transform, opacity). Zero main-thread interruption.

ATier A
A-Tier • Main-Thread Composited

Animations change composited values from the main thread with smooth micro-interaction orchestration.

BTier B
B-Tier • Measured Animation

S or A-tier animations requiring upfront DOM measurements (e.g. FLIP layout morphing, elastic progress).

CTier C
C-Tier • Paint Triggering

Animations trigger paint operations (colors, shadows, SVG paths, and theme transitions).

D / FTier D / F
D/F • Layout & Thrashing (0%)

Zero tolerance in Sora UI: No layout recalculations or synchronous DOM thrashing allowed.

Status:
Category:
Platform:
Base UI: ButtonCompleted
Tier Sreact

Accessible button with physics-based spring scaling on hover/tap and CVA variants.

Phase 1Base UI#Core#Spring Scaling#Base UI
View Documentation
Base UI: CheckboxCompleted
Tier Sreact

Animated checkbox with SVG path morphing checkmark and elastic pop feedback.

Phase 1Base UI#Forms#Path Morph#Base UI
View Documentation
Base UI: DialogCompleted
Tier Sreact

Modal dialog with backdrop blur fade and scale-in spring transition.

Phase 1Base UI#Overlays#Scale Spring#Base UI
View Documentation
Base UI: AccordionIn Progress
Tier Sreact

Smooth height layout animation with rotating chevron and keyboard navigation.

Phase 1Base UI#Disclosure#Height Morph#Base UI
Base UI: Context menuPlanned
Tier Areact

Pointer-origin scaling context menu with cascaded submenu transitions.

Phase 1Base UI#Navigation#Transform Origin#Base UI
Base UI: Dropdown menuPlanned
Tier Sreact

Collision-aware floating dropdown with staggered items and active item pill.

Phase 1Base UI#Navigation#Stagger#Base UI
Base UI: ProgressPlanned
Tier Breact

Elastic filling progress bar with smooth indeterminate shimmer and numeric ticker.

Phase 1Base UI#Feedback#Elastic#Base UI
Base UI: RadioPlanned
Tier Areact

Radio group with shared layoutId gliding active circle indicator.

Phase 1Base UI#Forms#Layout Morph#Base UI
Base UI: SelectPlanned
Tier Sreact

Animated select combobox dropdown with floating active pill and filter transitions.

Phase 1Base UI#Forms#Floating UI#Base UI
Base UI: SwitchPlanned
Tier Sreact

Inertia stretch switch toggle with rubber-band thumb physics.

Phase 1Base UI#Forms#Rubber Band#Base UI
Base UI: TabsPlanned
Tier Sreact

Sliding background indicator pill with cross-fading tab panels.

Phase 1Base UI#Navigation#Shared Layout#Base UI
Base UI: ToastPlanned
Tier Sreact

Stacked toast notification queue with interactive swipe-to-dismiss gesture physics.

Phase 1Base UI#Feedback#Swipe Gesture#Base UI
Base UI: Toggle groupPlanned
Tier Areact

Multi-item toggle group with morphing border bounds and tactile feedback.

Phase 1Base UI#Buttons#Morphing#Base UI
Base UI: TooltipPlanned
Tier Breact

Micro scale-fade tooltip with dynamic arrow position tracking.

Phase 1Base UI#Overlays#Micro Animation#Base UI
Radix: ButtonCompleted
Tier Sreact

Radix primitive slot button with Motion hover scale physics.

Phase 2Radix UI#Core#Radix UI
View Documentation
Radix: CheckboxCompleted
Tier Sreact

Radix checkbox with animated check icon path and focus ring.

Phase 2Radix UI#Forms#Radix UI
View Documentation
Radix: DialogCompleted
Tier Sreact

Radix dialog modal overlay with spring entrance animation.

Phase 2Radix UI#Overlays#Radix UI
View Documentation
Radix: Bottom SheetPlanned
Tier Sreact

Mobile-first draggable bottom sheet drawer with inertia fling dismiss (Redesign planned).

Phase 2Radix UI#Drawer#Gestures#Radix UI
Radix: AccordionPlanned
Tier Sreact

Radix accordion with smooth collapsible height animation.

Phase 2Radix UI#Disclosure#Radix UI
Radix: Context & Dropdown MenuPlanned
Tier Sreact

Radix floating menus with spring staggered items.

Phase 2Radix UI#Navigation#Radix UI
Radix: Popover & Hover CardPlanned
Tier Areact

Floating popovers with directional micro spring transitions.

Phase 2Radix UI#Overlays#Radix UI
Radix: Tabs, Switch & SliderPlanned
Tier Sreact

Interactive controls with shared layout sliding indicator and drag physics.

Phase 2Radix UI#Controls#Radix UI
Radix: Toast & TooltipPlanned
Tier Areact

Accessible notification queue and tooltip hover transitions.

Phase 2Radix UI#Feedback#Radix UI
React Aria Components IntegrationPlanned
Tier Sreact

Adobe's enterprise-grade accessible components infused with Sora Motion spring physics.

Phase 3Other Headless UI#React Aria#Headless#Accessibility
Ark UI (Zag.js) AdapterPlanned
Tier Areactvue

State machine-driven headless components with universal motion presets.

Phase 3Other Headless UI#Ark UI#Zag.js#Multi-Framework
Ariakit & Headless UI ModulesPlanned
Tier Breact

Clean adapters for Tailwind Headless UI and Ariakit primitives.

Phase 3Other Headless UI#Ariakit#Headless UI
Multi-Platform: Vue 3 & Vanilla JavaScriptPlanned
Tier Avuejs

Dedicated component ports for Vue 3 (Motion for Vue) and vanilla JS web components.

Phase 4Cross-Platform#Vue 3#Vanilla JS#Cross-Platform
100% Free & Open Source

Free forever • MIT Licensed • Community Driven

Every Base UI, Radix UI, and Motion primitive is completely free to use in personal and commercial projects. Copy-paste source code directly into your app.

Prioritization Strategy

Our component development follows a structured roadmap designed to provide complete, production-ready animated primitives:

Phase 1: Base UI First (Current Focus)

Base UI provides an unstyled, highly accessible component foundation designed for modern React. We are systematically building Motion-powered animated variants for all 13 core Base UI components:

  • Button (/ui/base/button) — Physics spring hover/tap scaling and comprehensive CVA variants. (Completed)
  • Checkbox (/ui/base/checkbox) — Animated checkmark path morphing and elastic pop feedback. (Completed)
  • Dialog (/ui/base/dialog) — Smooth backdrop blur with scale-in spring physics. (Completed)
  • Accordion — Smooth layout-height morphing and spring chevron rotation. (In Progress)
  • Context Menu — Origin-aware transform scaling with cascaded submenu transitions. (Planned)
  • Dropdown Menu — Collision-aware floating popovers with item stagger. (Planned)
  • Progress — Elastic bar fill with indeterminate shimmer and animated numeric ticker. (Planned)
  • Radio / Radio Group — Shared layoutId gliding active indicator. (Planned)
  • Select — Floating dropdown with active pill glide and keyboard navigation. (Planned)
  • Switch — Inertia stretch toggle with rubber-band physics. (Planned)
  • Tabs — Sliding background indicator pill and cross-fading tab panels. (Planned)
  • Toast — Stacked notification queue with swipe-to-dismiss gesture physics. (Planned)
  • Toggle Group — Multi-select animated bounding boxes. (Planned)
  • Tooltip — Micro scale-fade tooltip with dynamic arrow position tracking. (Planned)

Phase 2: Radix UI Suite (Next Priority)

Our Radix UI tier infuses Radix Primitives with Sora Motion spring dynamics and layout orchestration:

  • Completed: Button, Checkbox, Dialog.
  • Upcoming & Redesign: Bottom Sheet, Accordion, Alert Dialog, Context Menu, Dropdown Menu, Hover Card, Menubar, Navigation Menu, Popover, Select, Separator, Slider, Switch, Tabs, Toast, Tooltip.

Phase 3: Other Headless UI Libraries (Future Planning)

To provide universal flexibility across different architecture requirements:

  • React Aria Components: Adobe's accessibility primitives combined with Sora Motion spring physics.
  • Ark UI: Zag.js state-machine driven components with universal animation presets.
  • Headless UI & Ariakit: Clean adapters for Tailwind Headless UI and Ariakit.

Phase 4: Cross-Platform & Ecosystem Expansion

  • Vue 3: Official component ports using Motion for Vue.
  • Vanilla JavaScript: Web components and framework-agnostic wrappers.

MotionScore™ Performance Auditing

Every component in the Sora UI registry is engineered for 60/120 FPS performance and benchmarked across four key animation categories:

TierRender Pipeline WorkAnimation CharacteristicsPerformance Standard
Tier SCompositor OnlyRuns entirely on the GPU compositor thread (transform, opacity).Zero main-thread interruption, 120 FPS capable, full reduced-motion branch.
Tier AMain-Thread CompositedChanges composited values from the main thread with micro-orchestrations.Zero layout shifts, keyboard and focus synchronized.
Tier BMeasured AnimationRequires upfront DOM measurements (e.g. FLIP layout morphing, bounds calculation).Smooth FLIP transitions without layout thrashing.
Tier CPaint TriggeringTriggers paint operations (colors, shadows, SVG paths, background transitions).Non-intrusive, isolated repaints.
Tier D / FLayout & ThrashingInterleaved DOM reads/writes or layout recalculations (width, height, top/left).0% Zero-Tolerance: Strictly eliminated in Sora UI.

Running Local Audits with MotionScore CLI

You can audit any component or page locally in your development environment for free using the MotionScore CLI. The --no-upload flag runs a headless Chromium browser locally on your machine with unlimited, unmetered audits:

Start Dev Server & Run Audit

Run an unmetered local audit on your active development server without consuming cloud credits:

Test Viewport Formats

Audit specific viewport layouts to catch responsive animation regressions:

  • Mobile Viewport Only:
    npx motionscore http://localhost:3000/ui/base/checkbox --mobile-only --no-upload
  • Desktop Viewport Only:
    npx motionscore http://localhost:3000/ui/base/dialog --desktop-only --no-upload

Export Report Summary

Export compact JSON findings for automated assertions or CI/CD pipelines:

npx motionscore http://localhost:3000/ui --summary audit-report.json --no-upload

Review the 4 Audit Pillars

The audit evaluates your component across four core render pipeline signals:

  1. Animation Properties: Identifies properties triggering layout reflows (width, height, top, left) vs GPU-accelerated transforms.
  2. Scroll Performance: Evaluates scroll-linked transforms and trigger synchronization.
  3. DOM & Style Thrashing: Detects interleaved reads and writes causing forced reflows.
  4. GPU Texture & Memory: Measures VRAM consumption and compositor layer count.

Requesting a Component

Have an animation idea or a specific headless UI component you'd like to see prioritized? Open an issue or join our community discussions on GitHub.

Built by Axyl. A motion-first component registry for React.

Last updated: 8/22/2026