@aura-react-comp/motion

中文文档
0.2.11发布于 2026/11/02MITTypeScriptES Module构建来源已验证近 30 天下载 2620

Aura 动效组件库 — 令牌驱动的场景化动画组件(进出场、数字与文字特效、滚动驱动、编排、手势)

原始使用文档
文档目录8 节
  1. 安装
  2. 引入令牌
  3. 快速开始
  4. 组件清单(30 个)
  5. 与 AI 对话场景组合
  6. 设计约定
  7. 可访问性(三层降级)
  8. 渐进增强声明

@aura-react-comp/motion

Aura 动效组件库 —— 令牌驱动的场景化动画组件。

安装

npm i @aura-react-comp/motion

react / react-dom 为 peer 依赖;lottie-web 为可选 peer(仅 <LottiePlayer> 需要)。

引入令牌

所有组件的时长与缓动都走动效令牌,请一次性引入(或经 ui 联动包级联引入):

import '@aura-react-comp/motion/tokens.css';

快速开始

import { Slide, NumberTicker, Reveal } from '@aura-react-comp/motion';

// 进出场(保留式:DOM 常驻)
<Slide visible={open} direction="up" distance="md">…</Slide>

// 进出场(卸载式:配合 AnimatePresence)
<AnimatePresence>{open && <Zoom key="modal">…</Zoom>}</AnimatePresence>

// 数字滚动
<NumberTicker value={128940} />

// 进入视口揭示
<Reveal index={0}>…</Reveal>

组件清单(30 个)

基础(primitive)

组件场景
Slide / Fade / Zoom / Collapse进出场四件套(Collapse 用 open,其余用 visible)
Reveal视口揭示,variant: fade / blur / mask / scale
NumberTicker数字滚动(逐位独立弹簧、位间错峰、tabular-nums)
SplitText文字拆分进场,variant: fade / rise / flip
Typewriter打字机(AI 流式回复补位)
InViewport进入视口通用包装
Magnetic磁吸悬停
SkeletonShimmer骨架屏光泽(index 错峰出光)
FocusRing键盘焦点环跟随
Keyframes令牌驱动关键帧(白名单:opacity / scale / x / y / rotate / skew)
TextShimmer文字流光(AI 生成中)
TypingDots思考三点脉冲(role="status")
GradientBorder流光渐变边框(旋转 conic 光带)
Marquee无缝滚动横幅

复杂场景(composed)

组件场景
PageTransition路由转场(快退慢进)
ViewTransition原生 View Transitions 渐进增强
ScrollDriven / ScrollProgressBar滚动进度驱动
Parallax多层视差
PathDrawSVG 路径描边
Timeline / TimelineStep / useSequence时间线编排
FlipList列表增删自动重排(FLIP)
Draggable自由拖拽(约束 / 网格吸附 / 惯性)
Reorder / ReorderGroup / ReorderItem拖拽排序
LayoutGroup共享元素过渡
Cursor自定义光标跟随
Confetti庆祝粒子(纸条物理 + 翻面)
Aurora渐变氛围背景
LottiePlayerLottie 动画(可选 peer)
TiltCard3D 倾斜卡片(指针驱动 + 光泽跟随)
ScrollScaleCard滚动缩放揭示(landing 卡片)

编排 API:AnimatePresence、motion(源语)、MotionConfig、useReducedMotion、 useInView、useAnimationControls。

与 AI 对话场景组合

import { Bubble } from '@aura-react-comp/x';
import { TypingDots, TextShimmer, GradientBorder } from '@aura-react-comp/motion';

// 思考中(Bubble 的 content 是字符串,自定义节点走 contentRender)
<Bubble role="assistant" content="" contentRender={() => <TypingDots />} />

// 生成中流光标题(header 接受 ReactNode)
<Bubble role="assistant" header={<TextShimmer>正在生成…</TextShimmer>} content="…" />

// 流光边框回答卡片
<GradientBorder><Bubble role="assistant" content="…" /></GradientBorder>

motion 是 x 的可选增强——未安装不影响 x 的任何功能。完整场景见文档站 动效场景配方。

设计约定

  1. 只从本包导入,不要直接依赖 motion/react(引擎隔离层);
  2. 时长 / 缓动 / 位移传令牌档位名('fast'、'decelerate'、'md'),不传裸数值;
  3. 组件只动画 transform / opacity(Collapse 的 height 为既有例外,勿用于长列表)。

可访问性(三层降级)

层机制
令牌层prefers-reduced-motion: reduce 时 CSS 令牌时长归零
引擎层<MotionConfig reducedMotion="user"> 全局开关
组件层每组件内 useReducedMotion() 分支(Confetti 不撒、Cursor 不跟随……)

渐进增强声明

运行时依赖 Motion 引擎的浏览器基线(高于 ui 包的 chrome 80)。不满足时组件直接呈现 终态,无中间帧、无报错,页面功能不受影响;<ViewTransition> 在不支持的浏览器 自动降级为普通过渡。

版本与发布记录

@aura-react-comp/motion 共发布 18 个版本,首次发布于 2026/10/14;过去 12 个月发布了 18 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.2.11latest2026/11/025 天前
0.2.102026/11/025 天前
0.2.92026/11/025 天前
0.2.82026/11/025 天前
0.2.72026/11/025 天前
0.2.62026/11/025 天前

关于 @aura-react-comp/motion 的常见问题

@aura-react-comp/motion 是什么?

Aura 动效组件库 — 令牌驱动的场景化动画组件(进出场、数字与文字特效、滚动驱动、编排、手势)

如何安装 @aura-react-comp/motion?

在项目目录运行 npm install @aura-react-comp/motion,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:react(>=18.0.0)、react-dom(>=18.0.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@aura-react-comp/motion 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@aura-react-comp/motion 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@aura-react-comp/motion 可以商用吗?

@aura-react-comp/motion 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@aura-react-comp/motion 的下载量有多少?

根据 npm 官方下载统计,@aura-react-comp/motion 在 2026/10/07 – 2026/11/05 这 30 天内被下载 2,620 次,日均约 87 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@aura-react-comp/motion 还在维护吗?

最新版本 0.2.11 发布于 2026/11/02(5 天前);至今共发布 18 个版本,其中过去 12 个月发布了 18 个;首次发布于 2026/10/14。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。