remotion-video-reviewer

Compare original and translation side by side

🇺🇸

Original

English
🇨🇳

Translation

Chinese

Remotion Video Reviewer

Remotion视频审查器

Provides comprehensive, structured reviews of Remotion video implementations against motion design specifications. Identifies issues, assesses impact, and generates actionable revision lists.
针对动效设计规范,对Remotion视频实现提供全面、结构化的审查。识别问题、评估影响并生成可执行的修订列表。

What This Skill Does

本工具的功能

Performs multi-layer review analysis:
  1. Spec compliance — Verifies implementation matches design spec
  2. Code quality — Checks patterns, performance, best practices
  3. Timing accuracy — Validates frame calculations and animation timing
  4. Visual fidelity — Confirms colors, typography, layout match spec
  5. Asset quality — Verifies assets are production-ready
  6. Performance — Identifies render bottlenecks
执行多层审查分析:
  1. 规范合规性 — 验证实现是否符合设计规范
  2. 代码质量 — 检查代码模式、性能与最佳实践
  3. 时序准确性 — 验证帧计算与动画时序
  4. 视觉保真度 — 确认颜色、排版、布局与规范匹配
  5. 资源质量 — 验证资源是否达到生产就绪标准
  6. 性能 — 识别渲染瓶颈

Input/Output Formats

输入/输出格式

Input Format: VIDEO_SPEC.md + Code Files

输入格式:VIDEO_SPEC.md + 代码文件

Requires both the original specification and implemented code:
VIDEO_SPEC.md (from
/motion-designer
)
markdown
undefined
需要同时提供原始规范与已实现的代码:
VIDEO_SPEC.md(来自
/motion-designer
markdown
undefined

Video Title

Video Title

Overview

Overview

  • Duration: 30 seconds
  • Frame Rate: 30 fps
  • Duration: 30 seconds
  • Frame Rate: 30 fps

Color Palette

Color Palette

Primary: #FF6B35 Background: #0A0A0A
Primary: #FF6B35 Background: #0A0A0A

Scene 1: Opening (0s - 5s)

Scene 1: Opening (0s - 5s)

  • Logo scales from 0.8 to 1.0
  • Spring config: { damping: 200 }

**Code Files** to review:
- `src/remotion/compositions/VideoName/index.tsx`
- `src/remotion/compositions/VideoName/constants.ts`
- `src/remotion/compositions/VideoName/types.ts`
- Asset files in `public/`
  • Logo scales from 0.8 to 1.0
  • Spring config: { damping: 200 }

**待审查的代码文件**:
- `src/remotion/compositions/VideoName/index.tsx`
- `src/remotion/compositions/VideoName/constants.ts`
- `src/remotion/compositions/VideoName/types.ts`
- `public/`目录下的资源文件

Output Format: REVIEW_REPORT.md

输出格式:REVIEW_REPORT.md

Generates a comprehensive review with prioritized issues:
markdown
undefined
生成包含优先级问题的全面审查报告:
markdown
undefined

Video Review Report: [Video Title]

Video Review Report: [Video Title]

Date: 2026-01-23 Reviewer: remotion-video-reviewer Spec Version: VIDEO_SPEC.md v1.0 Code Location:
src/remotion/compositions/VideoName/

Date: 2026-01-23 Reviewer: remotion-video-reviewer Spec Version: VIDEO_SPEC.md v1.0 Code Location:
src/remotion/compositions/VideoName/

Executive Summary

执行摘要

Overall Status: ✅ APPROVED WITH MINOR REVISIONS
Quick Stats:
  • Total Issues: 4 (0 critical, 1 high, 2 medium, 1 low)
  • Spec Compliance: 95%
  • Code Quality: Excellent
  • Production Ready: Yes, after addressing HIGH priority items
Recommendation: Address high-priority color mismatch before final render. Medium and low priority items are optional improvements.

整体状态: ✅ 需小幅修订,已批准
关键统计:
  • 问题总数: 4个(0个严重,1个高优先级,2个中优先级,1个低优先级)
  • 规范合规性: 95%
  • 代码质量: 优秀
  • 生产就绪状态: 是,解决高优先级问题后即可
建议: 最终渲染前修复高优先级的颜色不匹配问题。中、低优先级问题为可选优化项。

Compliance Scores

合规性评分

CategoryScoreStatusNotes
Spec Compliance95%🟢 Pass1 color mismatch in Scene 3
Code Quality98%🟢 PassExcellent structure, minor optimization opportunity
Timing Accuracy100%🟢 PassAll frame calculations correct
Visual Fidelity95%🟢 PassMinor color deviation
Asset Quality90%🟡 Good1 image could be optimized
Performance95%🟢 PassExcellent render times
Overall Compliance: 95.5% — Production Ready

分类得分状态备注
规范合规性95%🟢 通过场景3存在1处颜色不匹配
代码质量98%🟢 通过结构优秀,存在小幅优化空间
时序准确性100%🟢 通过所有帧计算正确
视觉保真度95%🟢 通过存在小幅颜色偏差
资源质量90%🟡 良好1张图片可优化
性能95%🟢 通过渲染速度优秀
整体合规性: 95.5% — 已达生产就绪标准

Issues Found

发现的问题

CRITICAL (Must Fix Before Production)

严重优先级(生产前必须修复)

None

HIGH Priority (Should Fix)

高优先级(建议修复)

1. Scene 3 Background Color Mismatch

1. 场景3背景颜色不匹配

Category: Visual Fidelity Location:
src/remotion/compositions/VideoName/scenes/Scene3.tsx:15
Impact: Visual inconsistency with brand colors
Issue:
typescript
// Current implementation
backgroundColor: '#0B0B0B'  // ❌ Wrong

// Spec requirement
Primary: #FF6B35
Background: #0A0A0A  // ✅ Correct
Fix:
typescript
// Update to use COLORS constant
backgroundColor: COLORS.background  // Now: #0A0A0A
Verification:
  • Update
    constants.ts
    if COLORS.background is incorrect
  • Verify Scene 3 uses COLORS.background
  • Visual check against spec color palette

分类: 视觉保真度 位置:
src/remotion/compositions/VideoName/scenes/Scene3.tsx:15
影响: 与品牌颜色存在视觉不一致
问题:
typescript
// Current implementation
backgroundColor: '#0B0B0B'  // ❌ Wrong

// Spec requirement
Primary: #FF6B35
Background: #0A0A0A  // ✅ Correct
修复方案:
typescript
// Update to use COLORS constant
backgroundColor: COLORS.background  // Now: #0A0A0A
验证步骤:
  • 若COLORS.background不正确,更新
    constants.ts
  • 验证场景3使用COLORS.background
  • 对照规范调色板进行视觉检查

MEDIUM Priority (Consider Fixing)

中优先级(考虑修复)

2. Large Product Image Could Be Optimized

2. 大型产品图片可优化

Category: Asset Quality Location:
public/images/product.png
Impact: Slower render times, larger output file
Current:
  • Format: PNG
  • Resolution: 4000x3000
  • File size: 8.2MB
Recommendation:
  • Format: JPEG (no transparency needed)
  • Resolution: 1920x1440 (2x display size)
  • Quality: 90%
  • Expected size: ~400KB (95% reduction)
Fix:
bash
undefined
分类: 资源质量 位置:
public/images/product.png
影响: 渲染速度变慢,输出文件变大
当前状态:
  • 格式: PNG
  • 分辨率: 4000x3000
  • 文件大小: 8.2MB
建议:
  • 格式: JPEG(无需透明通道)
  • 分辨率: 1920x1440(2倍显示尺寸)
  • 质量: 90%
  • 预期大小: ~400KB(减少95%)
修复方案:
bash
undefined

Resize and convert

Resize and convert

magick public/images/product.png -resize 1920x1440 -quality 90 public/images/product.jpg
magick public/images/product.png -resize 1920x1440 -quality 90 public/images/product.jpg

Update code to use .jpg

Update code to use .jpg

<Img src={staticFile('images/product.jpg')} />

**Benefits:**
- Faster preview/render times
- Smaller final video file
- No visual quality loss

---
<Img src={staticFile('images/product.jpg')} />

**收益:**
- 预览/渲染速度更快
- 最终视频文件更小
- 无视觉质量损失

---

3. Particle System Could Use Memoization

3. 粒子系统可使用Memoization

Category: Performance Location:
src/remotion/compositions/VideoName/scenes/Scene2.tsx:45
Impact: Minor performance improvement possible
Current:
typescript
// Particle positions recalculated (deterministic but not cached)
const particles = Array.from({ length: 70 }, (_, i) => ({
  x: seededRandom(i * 123) * width,
  y: seededRandom(i * 456) * height,
}));
Recommendation:
typescript
import { useMemo } from 'react';

const particles = useMemo(
  () => Array.from({ length: 70 }, (_, i) => ({
    x: seededRandom(i * 123) * width,
    y: seededRandom(i * 456) * height,
  })),
  [width, height]
);
Expected Impact: 5-10% faster render for Scene 2

分类: 性能 位置:
src/remotion/compositions/VideoName/scenes/Scene2.tsx:45
影响: 可实现小幅性能提升
当前代码:
typescript
// Particle positions recalculated (deterministic but not cached)
const particles = Array.from({ length: 70 }, (_, i) => ({
  x: seededRandom(i * 123) * width,
  y: seededRandom(i * 456) * height,
}));
建议:
typescript
import { useMemo } from 'react';

const particles = useMemo(
  () => Array.from({ length: 70 }, (_, i) => ({
    x: seededRandom(i * 123) * width,
    y: seededRandom(i * 456) * height,
  })),
  [width, height]
);
预期影响: 场景2渲染速度提升5-10%

LOW Priority (Nice to Have)

低优先级(可选优化)

4. Add JSDoc Comments to Scene Components

4. 为场景组件添加JSDoc注释

Category: Code Quality Location: All scene components Impact: Improved maintainability
Recommendation:
typescript
/**
 * Scene 1: Opening animation with logo reveal
 * Duration: 0s - 5s (frames 0-150)
 * Spec reference: VIDEO_SPEC.md Section "Scene 1"
 */
function Scene1Opening() {
  // ...
}
Benefits:
  • Easier for team members to understand
  • Better IDE autocomplete
  • Clear spec traceability

分类: 代码质量 位置: 所有场景组件 影响: 提升可维护性
建议:
typescript
/**
 * Scene 1: Opening animation with logo reveal
 * Duration: 0s - 5s (frames 0-150)
 * Spec reference: VIDEO_SPEC.md Section "Scene 1"
 */
function Scene1Opening() {
  // ...
}
收益:
  • 便于团队成员理解
  • 更好的IDE自动补全
  • 清晰的规范追溯性

Detailed Analysis

详细分析

Spec Compliance (95%)

规范合规性(95%)

Passed:
  • All 4 scenes implemented
  • Scene timing matches spec exactly (verified frame calculations)
  • Typography matches (Inter font, correct weights)
  • Audio placement correct (background music + 2 SFX)
  • Spring configurations match spec descriptions
  • All animations implemented as described
Failed:
  • Scene 3 background color (#0B0B0B instead of #0A0A0A)
Verification Steps Completed:
  • Compared scene count: 4 scenes (matches)
  • Verified scene durations: All correct
  • Checked color palette: 1 mismatch found
  • Validated spring configs: All match
  • Tested audio timing: Correct

通过项:
  • 所有4个场景已实现
  • 场景时序与规范完全匹配(已验证帧计算)
  • 排版匹配(Inter字体,字重正确)
  • 音频位置正确(背景音乐 + 2个音效)
  • Spring配置与规范描述匹配
  • 所有动画均按描述实现
未通过项:
  • 场景3背景颜色(使用#0B0B0B而非#0A0A0A)
已完成的验证步骤:
  • 对比场景数量: 4个场景(匹配)
  • 验证场景时长: 全部正确
  • 检查调色板: 发现1处不匹配
  • 验证Spring配置: 全部匹配
  • 测试音频时序: 正确

Code Quality (98%)

代码质量(98%)

Excellent Patterns:
  • Constants properly extracted (COLORS, SPRING_CONFIGS, SCENE_TIMING)
  • Consistent naming conventions (Scene1Opening, Scene2Content)
  • AbsoluteFill used correctly in all scenes
  • Progress variables extracted (not inline spring calls)
  • TypeScript types defined for all props
  • Clean, readable code structure
  • Proper imports from remotion
Best Practices Followed:
  • useVideoConfig used for responsive positioning
  • staticFile() used for all assets
  • Sequence timing uses constants
  • No magic numbers in code
  • Deterministic random in particle system
🟡 Minor Improvements:
  • Could add useMemo to particle calculation (LOW impact)
  • JSDoc comments would improve maintainability

优秀模式:
  • 常量已正确提取(COLORS、SPRING_CONFIGS、SCENE_TIMING)
  • 命名约定一致(Scene1Opening、Scene2Content)
  • AbsoluteFill在所有场景中使用正确
  • 进度变量已提取(未内联Spring调用)
  • 已为所有Props定义TypeScript类型
  • 代码结构清晰、可读性强
  • 正确从remotion导入模块
遵循最佳实践:
  • 使用useVideoConfig实现响应式定位
  • 所有资源均使用staticFile()
  • 序列时序使用常量
  • 代码中无魔法数字
  • 粒子系统中使用确定性随机数
🟡 小幅优化建议:
  • 可为粒子计算添加useMemo(影响低)
  • 添加JSDoc注释可提升可维护性

Timing Accuracy (100%)

时序准确性(100%)

All Verified:
Scene 1: 0s - 5s    → frames 0-150    ✓ Correct (5 * 30fps)
Scene 2: 5s - 15s   → frames 150-450  ✓ Correct (10 * 30fps)
Scene 3: 15s - 25s  → frames 450-750  ✓ Correct (10 * 30fps)
Scene 4: 25s - 30s  → frames 750-900  ✓ Correct (5 * 30fps)

Total: 30s = 900 frames ✓ Correct
Validation:
  • All SCENE_TIMING constants match spec
  • Sequence components use correct start/duration
  • No timing overlap or gaps
  • Audio timing matches frame calculations

全部验证通过:
Scene 1: 0s - 5s    → frames 0-150    ✓ Correct (5 * 30fps)
Scene 2: 5s - 15s   → frames 150-450  ✓ Correct (10 * 30fps)
Scene 3: 15s - 25s  → frames 450-750  ✓ Correct (10 * 30fps)
Scene 4: 25s - 30s  → frames 750-900  ✓ Correct (5 * 30fps)

Total: 30s = 900 frames ✓ Correct
验证内容:
  • 所有SCENE_TIMING常量与规范匹配
  • 序列组件使用正确的开始/时长
  • 无时序重叠或间隙
  • 音频时序与帧计算匹配

Asset Quality (90%)

资源质量(90%)

Good:
  • Logo: 800x800 PNG, optimized, transparent ✓
  • Background music: 30s MP3, 192kbps ✓
  • Whoosh SFX: MP3, proper duration ✓
  • Pop SFX: MP3, proper duration ✓
  • Font: Inter loaded correctly via @remotion/google-fonts ✓
🟡 Could Improve:
  • Product image: 8.2MB PNG → Should be 1920x1440 JPEG (~400KB)
Asset Checklist:
  • All assets present in
    public/
  • Correct formats used (mostly)
  • staticFile() imports correct
  • File sizes optimized (1 large image)
  • No missing assets

良好项:
  • Logo: 800x800 PNG,已优化,带透明通道 ✓
  • 背景音乐: 30秒MP3,192kbps ✓
  • Whoosh音效: MP3,时长合适 ✓
  • Pop音效: MP3,时长合适 ✓
  • 字体: Inter通过@remotion/google-fonts正确加载 ✓
🟡 可优化项:
  • 产品图片: 8.2MB PNG → 应改为1920x1440 JPEG(约400KB)
资源检查清单:
  • 所有资源均存在于
    public/
    目录
  • 大部分使用正确格式
  • staticFile()导入正确
  • 文件大小已优化(1张大型图片未优化)
  • 无缺失资源

Performance (95%)

性能(95%)

Render Performance:
  • Average: 85ms/frame ✅ Excellent (target: <100ms)
  • Scene 1: 65ms/frame ✅
  • Scene 2: 105ms/frame 🟡 (particle system, acceptable)
  • Scene 3: 75ms/frame ✅
  • Scene 4: 70ms/frame ✅
No Major Issues:
  • ✅ Spring calculations extracted and reused
  • ✅ No expensive operations in render path
  • ✅ Assets load efficiently (except large PNG)
  • ✅ No memory leaks detected
Minor Optimization Opportunities:
  • Memoize particle calculations (5-10% improvement in Scene 2)
  • Optimize product.png (faster asset loading)

渲染性能:
  • 平均: 85ms/帧 ✅ 优秀(目标: <100ms)
  • 场景1: 65ms/帧 ✅
  • 场景2: 105ms/帧 🟡(粒子系统,可接受)
  • 场景3: 75ms/帧 ✅
  • 场景4: 70ms/帧 ✅
无重大问题:
  • ✅ Spring计算已提取并复用
  • ✅ 渲染路径中无昂贵操作
  • ✅ 资源加载高效(除大型PNG外)
  • ✅ 未检测到内存泄漏
小幅优化机会:
  • 对粒子计算进行Memo化(场景2性能提升5-10%)
  • 优化product.png(加快资源加载速度)

Recommendations

建议

Before Production

生产前准备

  1. Fix HIGH priority color mismatch (5 minutes)
  2. ⏭️ Consider optimizing product image (10 minutes) - Optional but recommended
  1. 修复高优先级颜色不匹配问题(5分钟)
  2. ⏭️ 考虑优化产品图片(10分钟)- 可选但推荐

For Future Iterations

未来迭代建议

  1. Add JSDoc comments to scene components
  2. Apply memoization to particle system
  3. Consider extracting ParticleSystem to reusable component

  1. 为场景组件添加JSDoc注释
  2. 为粒子系统应用Memo化
  3. 考虑将ParticleSystem提取为可复用组件

Testing Checklist

测试清单

Completed validation:
  • Visual inspection of all scenes
  • Frame-by-frame timing verification
  • Color palette comparison
  • Audio synchronization test
  • Asset loading verification
  • Render performance profiling
  • Code pattern review
  • Best practices compliance

已完成的验证:
  • 所有场景的视觉检查
  • 逐帧时序验证
  • 调色板对比
  • 音频同步测试
  • 资源加载验证
  • 渲染性能分析
  • 代码模式审查
  • 最佳实践合规性检查

Next Steps

后续步骤

  1. Address HIGH priority issue: Fix Scene 3 background color
  2. Optional: Optimize product.png asset
  3. Final render: Generate production video
  4. Performance check: Run
    /remotion-performance-optimizer
    if render times increase
  5. Archive: Save REVIEW_REPORT.md with project files

  1. 处理高优先级问题: 修复场景3背景颜色
  2. 可选操作: 优化product.png资源
  3. 最终渲染: 生成生产级视频
  4. 性能检查: 若渲染时间增加,运行
    /remotion-performance-optimizer
  5. 归档: 将REVIEW_REPORT.md与项目文件一起保存

Approval

批准状态

Status: ✅ APPROVED WITH MINOR REVISIONS
This implementation is production-ready after addressing the Scene 3 color mismatch. All critical functionality, timing, and structure are correct. Medium and low priority items are optional improvements that can be addressed in future iterations.
Signed: remotion-video-reviewer Date: 2026-01-23

**This document provides:**
- Executive summary with quick approval status
- Quantified compliance scores (95%, 98%, etc.)
- Prioritized issues (CRITICAL, HIGH, MEDIUM, LOW)
- Specific code locations and fixes
- Detailed analysis per category
- Testing verification checklist
- Clear next steps
- Official approval status

**Feeds into:**
- Developer: Fix identified issues
- `/remotion-performance-optimizer` if performance issues found
- Final production render after approval
状态: ✅ 需小幅修订,已批准
本实现修复场景3颜色不匹配问题后即可投入生产。所有核心功能、时序与结构均正确。中、低优先级问题为可选优化项,可在未来迭代中处理。
签名: remotion-video-reviewer 日期: 2026-01-23

**本文档包含:**
- 带有快速批准状态的执行摘要
- 量化的合规性得分(95%、98%等)
- 按优先级排序的问题列表(严重、高、中、低)
- 具体代码位置与修复方案
- 按分类划分的详细分析
- 测试验证清单
- 清晰的后续步骤
- 官方批准状态

**对接其他工具:**
- 开发者: 修复已识别的问题
- 若发现性能问题,使用`/remotion-performance-optimizer`
- 批准后生成最终生产级渲染

Review Process

审查流程

1. Spec Comparison

1. 规范对比

Compare implementation against motion design spec:
Check:
  • All scenes from spec are implemented
  • Scene durations match spec timing
  • Color palette matches hex codes exactly
  • Typography (font, size, weight) matches
  • Animation descriptions are accurately translated
  • Audio placement matches timing
  • Spring configurations match spec
对照动效设计规范检查实现:
检查项:
  • 规范中的所有场景均已实现
  • 场景时长与规范时序匹配
  • 调色板与十六进制代码完全匹配
  • 排版(字体、大小、字重)匹配
  • 动画描述已准确实现
  • 音频位置与时序匹配
  • Spring配置与规范匹配

2. Code Quality Review

2. 代码质量审查

Evaluate code structure and patterns:
Check:
  • Constants extracted (colors, springs, timing)
  • Scene components follow naming convention
  • AbsoluteFill used for all scenes
  • Progress variables extracted (not inline calculations)
  • useVideoConfig used for responsive positioning
  • TypeScript types defined
  • Proper imports from remotion
评估代码结构与模式:
检查项:
  • 常量已提取(颜色、Spring、时序)
  • 场景组件遵循命名约定
  • 所有场景均使用AbsoluteFill
  • 进度变量已提取(未内联计算)
  • 使用useVideoConfig实现响应式定位
  • 已定义TypeScript类型
  • 正确从remotion导入模块

3. Timing Accuracy

3. 时序准确性验证

Verify frame calculations:
Check:
  • Seconds correctly converted to frames (seconds * fps)
  • Scene timing constants are accurate
  • Delay calculations use frame offsets
  • Transitions account for overlap
  • Total duration matches spec
  • Animation hold times are correct
验证帧计算:
检查项:
  • 秒数已正确转换为帧(秒数 * fps)
  • 场景时序常量准确
  • 延迟计算使用帧偏移量
  • 过渡效果已考虑重叠
  • 总时长与规范匹配
  • 动画保持时间正确

4. Animation Review

4. 动画审查

Assess animation implementation:
Check:
  • Spring configs match spec descriptions
  • Interpolate ranges match spec values
  • Easing functions appropriate for motion type
  • Stagger delays calculated correctly
  • Continuous animations use appropriate patterns
  • Exit animations present where specified
评估动画实现:
检查项:
  • Spring配置与规范描述匹配
  • 插值范围与规范值匹配
  • 缓动函数适合动效类型
  • 交错延迟计算正确
  • 连续动画使用合适模式
  • 规范中指定的退出动画已实现

5. Visual Fidelity

5. 视觉保真度检查

Confirm visual accuracy:
Check:
  • Background colors match spec
  • Element colors use COLORS constants
  • Font sizes match spec exactly
  • Positioning follows spec layout
  • Visual hierarchy maintained
  • Layer organization (background/midground/foreground)
确认视觉准确性:
检查项:
  • 背景颜色与规范匹配
  • 元素颜色使用COLORS常量
  • 字体大小与规范完全匹配
  • 定位遵循规范布局
  • 视觉层次结构得以保持
  • 图层组织(背景/中景/前景)正确

6. Asset Quality

6. 资源质量验证

Validate asset preparation:
Check:
  • All required assets present
  • Assets use staticFile() import
  • Image formats appropriate (PNG for transparency, JPEG for photos)
  • Audio files in supported formats
  • Asset dimensions suitable for composition
  • Fonts loaded correctly
验证资源准备情况:
检查项:
  • 所有必需资源均已存在
  • 资源使用staticFile()导入
  • 图片格式合适(透明图用PNG,照片用JPEG)
  • 音频文件为支持格式
  • 资源尺寸适合合成内容
  • 字体加载正确

7. Performance Check

7. 性能检查

Identify performance issues:
Check:
  • No expensive calculations in render
  • Progress variables reused
  • No unnecessary spring recalculations
  • Memoization used where appropriate
  • Large assets optimized
  • No memory leaks in loops
识别性能问题:
检查项:
  • 渲染中无昂贵计算
  • 进度变量已复用
  • 无不必要的Spring重计算
  • 合适位置使用Memo化
  • 大型资源已优化
  • 循环中无内存泄漏

Review Output Format

审查输出格式

Summary

摘要

markdown
undefined
markdown
undefined

Review Summary

Review Summary

Spec Compliance: 95% (1 minor deviation) Code Quality: Excellent Timing Accuracy: 100% Visual Fidelity: 98% (color mismatch in Scene 3) Asset Quality: Good (1 optimization needed) Performance: Excellent
Overall Rating: READY FOR PRODUCTION (with minor revisions)
undefined
Spec Compliance: 95% (1 minor deviation) Code Quality: Excellent Timing Accuracy: 100% Visual Fidelity: 98% (color mismatch in Scene 3) Asset Quality: Good (1 optimization needed) Performance: Excellent
Overall Rating: READY FOR PRODUCTION (with minor revisions)
undefined

Issues List (Prioritized)

问题列表(按优先级排序)

markdown
undefined
markdown
undefined

Issues Found

Issues Found

CRITICAL (Must Fix)

CRITICAL (Must Fix)

None
None

HIGH (Should Fix)

HIGH (Should Fix)

  1. Scene 3 background color mismatch
    • Spec: #0A0A0A
    • Code: #0B0B0B
    • Impact: Visual inconsistency
    • Fix: Update COLORS.background
  1. Scene 3 background color mismatch
    • Spec: #0A0A0A
    • Code: #0B0B0B
    • Impact: Visual inconsistency
    • Fix: Update COLORS.background

MEDIUM (Consider Fixing)

MEDIUM (Consider Fixing)

  1. Product image could be optimized
    • Current: 4000x3000 PNG
    • Recommendation: 1920x1440 JPEG
    • Impact: Faster render times
    • Fix: Resize and convert asset
  1. Product image could be optimized
    • Current: 4000x3000 PNG
    • Recommendation: 1920x1440 JPEG
    • Impact: Faster render times
    • Fix: Resize and convert asset

LOW (Nice to Have)

LOW (Nice to Have)

  1. Add memoization to particle system
    • Impact: Negligible performance gain
    • Fix: Wrap in useMemo
undefined
  1. Add memoization to particle system
    • Impact: Negligible performance gain
    • Fix: Wrap in useMemo
undefined

Recommendations

建议

markdown
undefined
markdown
undefined

Recommendations

Recommendations

Code Organization

Code Organization

  • Extract ParticleSystem to reusable component
  • Consider splitting Scene6 (currently 150 lines)
  • Extract ParticleSystem to reusable component
  • Consider splitting Scene6 (currently 150 lines)

Performance

Performance

  • Preload audio files
  • Consider lazy loading large assets
  • Preload audio files
  • Consider lazy loading large assets

Maintainability

Maintainability

  • Add JSDoc comments to scene components
  • Consider extracting animation helpers
undefined
  • Add JSDoc comments to scene components
  • Consider extracting animation helpers
undefined

Common Issues to Check

常见问题检查

Timing Issues

时序问题

Issue: Incorrect frame calculation
typescript
// Wrong
const duration = 5; // Should be 150 frames, not 5

// Correct
const duration = 5 * fps; // 150 frames
Issue: Missing delay
typescript
// Wrong - all elements appear at once
const progress = spring({ frame, fps, config: SMOOTH_SPRING });

// Correct - staggered with delays
const progress = spring({
  frame: frame - (index * STAGGER_DELAY),
  fps,
  config: SMOOTH_SPRING
});
问题: 帧计算错误
typescript
// Wrong
const duration = 5; // Should be 150 frames, not 5

// Correct
const duration = 5 * fps; // 150 frames
问题: 缺少延迟
typescript
// Wrong - all elements appear at once
const progress = spring({ frame, fps, config: SMOOTH_SPRING });

// Correct - staggered with delays
const progress = spring({
  frame: frame - (index * STAGGER_DELAY),
  fps,
  config: SMOOTH_SPRING
});

Animation Issues

动画问题

Issue: Inline spring config instead of constant
typescript
// Wrong
const progress = spring({
  frame,
  fps,
  config: { damping: 200 },
});

// Correct
const progress = spring({
  frame,
  fps,
  config: SPRING_CONFIGS.smooth,
});
Issue: Repeated calculations
typescript
// Wrong
<div style={{
  opacity: spring({ frame, fps, config: SMOOTH }),
  transform: `scale(${spring({ frame, fps, config: SMOOTH })})`,
}} />

// Correct
const progress = spring({ frame, fps, config: SMOOTH });
<div style={{
  opacity: progress,
  transform: `scale(${progress})`,
}} />
问题: 内联Spring配置而非使用常量
typescript
// Wrong
const progress = spring({
  frame,
  fps,
  config: { damping: 200 },
});

// Correct
const progress = spring({
  frame,
  fps,
  config: SPRING_CONFIGS.smooth,
});
问题: 重复计算
typescript
// Wrong
<div style={{
  opacity: spring({ frame, fps, config: SMOOTH }),
  transform: `scale(${spring({ frame, fps, config: SMOOTH })})`,
}} />

// Correct
const progress = spring({ frame, fps, config: SMOOTH });
<div style={{
  opacity: progress,
  transform: `scale(${progress})`,
}} />

Visual Issues

视觉问题

Issue: Hardcoded colors
typescript
// Wrong
backgroundColor: '#FF6B35'

// Correct
backgroundColor: COLORS.primary
Issue: Pixel values instead of responsive
typescript
// Wrong
left: 960,  // Hardcoded center

// Correct
left: width / 2,  // Responsive center
问题: 硬编码颜色
typescript
// Wrong
backgroundColor: '#FF6B35'

// Correct
backgroundColor: COLORS.primary
问题: 使用像素值而非响应式取值
typescript
// Wrong
left: 960,  // Hardcoded center

// Correct
left: width / 2,  // Responsive center

Asset Issues

资源问题

Issue: Direct import instead of staticFile
typescript
// Wrong
import logo from './logo.png';

// Correct
import { staticFile } from 'remotion';
const logoSrc = staticFile('logo.png');
问题: 直接导入而非使用staticFile
typescript
// Wrong
import logo from './logo.png';

// Correct
import { staticFile } from 'remotion';
const logoSrc = staticFile('logo.png');

Performance Issues

性能问题

Issue: Expensive operation in render
typescript
// Wrong - recalculated every frame
const particles = Array.from({ length: 1000 }, (_, i) => ({
  x: Math.random() * width,
  y: Math.random() * height,
}));

// Correct - calculate once
const particles = useMemo(
  () => Array.from({ length: 1000 }, (_, i) => ({
    x: seededRandom(i * 123) * width,
    y: seededRandom(i * 456) * height,
  })),
  [width, height]
);
问题: 渲染中存在昂贵操作
typescript
// Wrong - recalculated every frame
const particles = Array.from({ length: 1000 }, (_, i) => ({
  x: Math.random() * width,
  y: Math.random() * height,
}));

// Correct - calculate once
const particles = useMemo(
  () => Array.from({ length: 1000 }, (_, i) => ({
    x: seededRandom(i * 123) * width,
    y: seededRandom(i * 456) * height,
  })),
  [width, height]
);

Review Checklist

审查清单

Complete review checklist:
完成以下审查清单:

Spec Compliance

规范合规性

  • All scenes implemented
  • Timing matches spec
  • Colors match exactly
  • Typography matches
  • Animations match descriptions
  • Audio matches spec
  • 所有场景已实现
  • 时序与规范匹配
  • 颜色完全匹配
  • 排版匹配
  • 动画与描述匹配
  • 音频与规范匹配

Code Quality

代码质量

  • Constants properly extracted
  • Naming conventions followed
  • AbsoluteFill used correctly
  • TypeScript types defined
  • Clean, readable code
  • 常量已正确提取
  • 遵循命名约定
  • AbsoluteFill使用正确
  • 已定义TypeScript类型
  • 代码清晰、可读

Timing

时序

  • Frame calculations correct
  • Delays calculated properly
  • Total duration accurate
  • Transitions timed correctly
  • 帧计算正确
  • 延迟计算正确
  • 总时长准确
  • 过渡时序正确

Visuals

视觉

  • Colors use constants
  • Responsive positioning
  • Visual hierarchy clear
  • Layer organization logical
  • 颜色使用常量
  • 响应式定位
  • 视觉层次清晰
  • 图层组织合理

Assets

资源

  • All assets present
  • staticFile used
  • Formats appropriate
  • Quality sufficient
  • 所有资源已存在
  • 使用staticFile
  • 格式合适
  • 质量达标

Performance

性能

  • No expensive render calculations
  • Progress variables reused
  • Assets optimized
  • Memoization where needed
  • 渲染中无昂贵计算
  • 进度变量已复用
  • 资源已优化
  • 合适位置使用Memo化

Integration with Other Skills

与其他工具的集成

Works with:
  • /remotion-spec-translator
    — Reviews translated code
  • /remotion-best-practices
    — Ensures patterns are followed
  • /motion-designer
    — Compares against original spec
  • /remotion-performance-optimizer
    — Deep performance analysis
可配合使用:
  • /remotion-spec-translator
    — 审查翻译后的代码
  • /remotion-best-practices
    — 确保遵循代码模式
  • /motion-designer
    — 与原始规范对比
  • /remotion-performance-optimizer
    — 深度性能分析

Rules Directory

规则目录

For detailed review criteria:
  • rules/spec-compliance.md — Verifying spec accuracy
  • rules/timing-review.md — Frame timing validation
  • rules/animation-quality.md — Animation assessment
  • rules/visual-accuracy.md — Visual fidelity checks
  • rules/asset-validation.md — Asset quality review
  • rules/performance-audit.md — Performance checking
  • rules/code-patterns.md — Code quality standards

This skill ensures Remotion implementations are production-ready, spec-compliant, and follow best practices before deployment.
详细审查标准请查看:
  • rules/spec-compliance.md — 规范准确性验证
  • rules/timing-review.md — 帧时序验证
  • rules/animation-quality.md — 动画评估
  • rules/visual-accuracy.md — 视觉保真度检查
  • rules/asset-validation.md — 资源质量审查
  • rules/performance-audit.md — 性能检查
  • rules/code-patterns.md — 代码质量标准

本工具可确保Remotion实现在部署前达到生产就绪标准、符合规范要求并遵循最佳实践。