Open Claude UI
中文
AI Chat Interface Components

AI Thinking Animation: Motion & Light

Claude-style motion tokens: 5 durations (60–450ms), 3 cubic-bezier curves, Framer Motion springs, reasoning glow and 28px scroll fade. 5 live React demos.

中文版Last updated:

Motion and light collects the timing and curves of the Claude desktop app: 5 duration tokens, easing curves, Framer Motion spring parameters, and the reasoning glow and scroll fade. The 5 demos on this page correspond to Chapter 4 of the v1 handbook and Chapter 4 of the v2 handbook, with 2.0 values taking precedence. This page is a translation of the Chinese demo page.

Key values

ItemValueSource
Durationsfast 60 · snap 120 · base 200 · sheet 300 · slow 450msv2/04 §4.3
ease-outcubic-bezier(.165, .84, .44, 1)v2/04 §4.3
ease-snapcubic-bezier(.32, .72, 0, 1)v2/04 §4.3
ease-overshootcubic-bezier(.34, 1.3, .64, 1)v2/04 §4.3
Reasoning glow breathing1.8sv1/04 §4.2
Scroll fade28pxv1/04 §4.3

Durations and easing

Every transition takes its duration from the 5 steps and its curve from the easing tokens in cds-theme.css.

fast 60ms
snap 120ms
base 200ms
sheet 300ms
slow 450ms
ease-swift
ease-expand
ease-enter
ease-out
ease-snap
ease-overshoot
ease-pop
ease-rise
ease-fall
5 阶时长 token(fast 60 · snap 120 · base 200 · sheet 300 · slow 450ms)与 cds-theme.css 里的 9 条缓动曲线。点“播放”看每档时长下的位移(减少动态效果时直接到位)。出处:v2/04 §4.3 · cds-theme.css:192-201

Spring parameters

Where physical rebound is needed, Framer Motion springs are used; 4 parameter sets correspond to different "weights".

BOUNCY k600 c30
SNAPPY k320 c28
GENTLE k380 c18
HEAVY_SNAP k1200 c80
4 套 Framer Motion 弹簧参数(stiffness / damping / mass),同一位移下对比回弹。出处:v1/04 §4.1.3 · code-examples/ClaudeMotionPresets.ts

The 2.0 motion engine

2.0 moves common motion to pure CSS, with no dependency on a JS animation library.

CDS 2.0 物理动效引擎实机呈现

1. Pill Elastic Pop (1.32x Overshoot)

2. Staggered Chip Cascade Entrance

AST-EngineElectron-FusesView-TransitionsScroll-TimelineOff-Line-Bundle

3. Skeleton 105° Linear Sweep (Wave Mode)

2.0 纯 CSS 动效:Pill 1.32× 过冲、sibling-index() 交错入场、骨架屏双模。出处:v2/05 §5.3 · v2/02 §2.5 · code-examples/CdsMotionEngine.tsx

Reasoning glow and sweep

While the model is reasoning, a warm glow surrounds the input area and a sweep runs across the text to signal "thinking".

正在推理
12s

长思维链推理时,外框会出现暖色光晕。

正在搜索文档…
推理时陶土暖光晕染(1.8s 呼吸)、文字扫光 cds-shimmer-text-shine、三相差分跳点、Epitaxy 线性扫光进度。出处:v1/04 §4.2 · code-examples/ReasoningAmbientGlow.tsx

Scroll fade

The edges of scrollable areas fade out over 28px with a mask; when scrolled to the top, the top edge does not fade.

第 1 行:滚动后顶部出现渐隐,回到顶部渐隐消失。

第 2 行:滚动后顶部出现渐隐,回到顶部渐隐消失。

第 3 行:滚动后顶部出现渐隐,回到顶部渐隐消失。

第 4 行:滚动后顶部出现渐隐,回到顶部渐隐消失。

第 5 行:滚动后顶部出现渐隐,回到顶部渐隐消失。

第 6 行:滚动后顶部出现渐隐,回到顶部渐隐消失。

第 7 行:滚动后顶部出现渐隐,回到顶部渐隐消失。

第 8 行:滚动后顶部出现渐隐,回到顶部渐隐消失。

第 9 行:滚动后顶部出现渐隐,回到顶部渐隐消失。

第 10 行:滚动后顶部出现渐隐,回到顶部渐隐消失。

第 11 行:滚动后顶部出现渐隐,回到顶部渐隐消失。

第 12 行:滚动后顶部出现渐隐,回到顶部渐隐消失。

第 13 行:滚动后顶部出现渐隐,回到顶部渐隐消失。

第 14 行:滚动后顶部出现渐隐,回到顶部渐隐消失。

第 15 行:滚动后顶部出现渐隐,回到顶部渐隐消失。

第 16 行:滚动后顶部出现渐隐,回到顶部渐隐消失。

第 17 行:滚动后顶部出现渐隐,回到顶部渐隐消失。

第 18 行:滚动后顶部出现渐隐,回到顶部渐隐消失。

第 19 行:滚动后顶部出现渐隐,回到顶部渐隐消失。

第 20 行:滚动后顶部出现渐隐,回到顶部渐隐消失。

滚动驱动遮罩(animation-timeline: scroll()),渐隐 28px,7 档非线性透明度;不支持时回退为 JS 监听。出处:v1/04 §4.3 · v2/02 §2.5.3 · code-examples/ScrollFadeContainer.tsx

How do I use these components in a project?

Copy the matching file from code-examples/ and import cds-theme.css. For example:

.panel {
  transition: transform var(--cds-dur-base) var(--cds-ease-out);
}

Note: some labels inside the demo components are still in Chinese (they come straight from the repository's components); the behavior and specs are the same.

Sources

The durations and curves on this page come from Chapter 4 of the v2 handbook, the glow and fade from Chapter 4 of v1, and the code from the repository's code-examples/.

On this page