Communitygithub.com

apple-launch-film

完全用代码重建苹果风格的Mac发布影片。使用Claude Code,一个HTML文件包含所有动画和场景,无需屏幕录制或After Effects。

apple-launch-film 是什么?

这是一个AI代理技能,用于通过Claude Code以纯代码方式生成苹果风格的Mac发布影片。它通过HTML绘制每一个像素,包括菜单栏、刘海屏、小组件和壁纸,并支持导出为MP4。该技能适用于开发者、设计师或营销人员,希望快速制作高质量的产品发布动画,而无需视频编辑软件。它支持Claude Code平台,并依赖`apple-design`技能来遵循苹果设计规范。工作流程包括:先收集产品名称、事实列表、6-8个场景、参考素材(可选)和尺寸/帧率等参数;然后构建一个自包含的HTML文件,使用`window.seek(seconds)`精确控制帧;最后使用HyperFrames工具渲染输出。技能还提供了避免常见陷阱的技巧,例如正确命名“刘海屏”、使用弹簧动画而非补间动画、逐场景对比参考帧等。

兼容平台✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/charlie947/motion-graphics-skills/tree/main/skills/apple-launch-film

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

苹果风格发布影片,用代码构建

Mac的每一个像素均由代码绘制:菜单栏、刘海屏、小组件和壁纸。一个包含 window.seek(seconds) 的HTML文件,导出为MP4。

开始之前: 如果存在 brand.md 和 MOTION.md 则先阅读它们。如果没有,先运行 brand-intake,或者询问十六进制颜色代码、字体和Logo文件。在没有这些信息的情况下,切勿将结果称为符合品牌规范。

搭配一个免费技能(非本人所写),该技能将苹果的设计指南转化为Claude遵循的规则。安装一次:

npx skills add emilkowalski/skills --skill apple-design

步骤1:询问五件事,然后等待

  1. 产品名称及其一行字,一字不差。
  2. 事实列表。 影片可能展示的每一项功能、数字和要求。屏幕上不显示其他内容。
  3. 场景。 6到8个,每个场景包含一个功能加一句简短说明。例如:“你的声音在这里安家。”
  4. 参考素材(可选):一个真实的Mac发布影片或其中的帧,放在名为 ref 的文件夹中。它仅用于设定外观。
  5. 尺寸和时长。 默认1920 x 1080,30fps,每个场景约2.5秒。

步骤2:构建简报(粘贴到Claude Code中)

使用apple-design技能。[如果ref/存在:匹配ref/中参考素材的LOOK。先读取每一帧。不要复制其文字或产品名称。]

这是一部针对[产品]的发布影片:屏幕顶部中央的黑色MacBook刘海屏逐渐展开,每次展开一个苹果风格的小组件。每个场景都有自己的全屏渐变彩色壁纸,以及刘海屏下方居中的一句说明文字,其中最后两个词用比壁纸颜色更浅的色调着色。影片以刘海屏展开和“hello”手写白色衬线文字开始,就像Mac的问候屏幕。

仅使用以下事实,不添加其他内容:
[事实列表]

场景,每个约2.5秒:
[1. 黑色背景上刘海屏展开,“hello”手写。]
[2..n. 壁纸颜色,刘海屏展开成什么部件,说明文字。]
[最后. 黑色:刘海屏闭合到静止形状。说明文字:产品名称及其一行字。]

尺寸[宽度] x [高度],30fps。画面是一个Mac屏幕:顶部一条细的macOS菜单栏,中间是刘海屏。系统字体(-apple-system,Helvetica Neue 后备字体)。

构建为一个自包含的HTML文件,带有 window.seek(seconds) 函数,可以绘制任何精确的帧。从每个场景捕获一帧[并与匹配的参考帧并排比较]。修复差异,并根据apple-design技能检查动画。

我硬核学到的教训

  • 用语言命名刘海屏。 面对相同的简报,一个模型画了整台笔记本电脑。“屏幕顶部中央的刘海屏”是锚点。
  • 使用弹簧动画,而非补间动画。 当宽度和高度按照各自曲线弹性变化时,刘海屏看起来才对——张开时柔和,闭合时没有过冲。
  • 从影片开始就规划好动画。 如果刘海屏在闭合完成之前重新打开,它会从其当前状态继续。逐场景的补间会导致跳跃。
  • 逐场景与参考素材对比。 并排帧比较能发现“hello”位置偏左且过大、本应是细刻度的粗进度条、以及挤进菜单栏的提示。
  • 菜单栏保持简短。 一长串菜单文字会被宽大的小组件切成两半。五个项目就足够了。
  • 小组件不添加任何声明。 占位文本为灰色线条。事实列表中未提供的任何UI文字(按钮标签、时钟时间)都需要列出来待批准。

步骤3:检查并导出

一个陌生人会在第一秒就相信这是一台真正的Mac吗?屏幕上的每个字都来自事实列表吗?添加一个减少动效的设置,将弹簧动画替换为快速淡入淡出。

使用HyperFrames(免费开源)导出:npx skills add heygen-com/hyperframes,然后运行 npx hyperframes render。如需竖屏剪辑,将MP4交给 reel-export。

Individual skills in this repo

This repo contains 14 individual skills — each has its own dedicated page.

animated-chart

Make a looping animated chart for LinkedIn or a newsletter in code with Claude Code. Bars that become a line, a number that counts up, a before and after. Every value stays exactly as given. Use when someone says

brand-intake

The setup step every other skill in this pack reads. A short interview plus 3 to 5 reference frames becomes two files in your project, brand.md (who you are, what you sell, your assets) and MOTION.md (your colours, type, timing and motion rules), plus a rule in CLAUDE.md so Claude reads them before it animates anything. Use at the start of any motion project, or when someone says

launch-video

Make a 30-45 second product launch video in code with Claude Code, the kind SaaS companies post on launch day. One sentence split across scenes, real product screens with slow camera moves, a typed prompt, a proof beat and a clear call to action. Use when someone says

loop-cover

Turn a newsletter or blog cover into a seamless looping GIF at 896 x 640, 180 frames at 20fps. Only the one element you name moves, the loop is rotated so frame 1 shows the finished picture, and the seam is measured, not eyeballed. Use when someone says

milestone-reveal

Make a 12-second looping milestone clip in code with Claude Code. Thousands of tiny points drift like a night sky, pull together into your real number (followers, subscribers, revenue, customers), a line draws underneath and the label settles in. Premium, not a party. Use when someone says

model-showdown

Give the same motion brief to three AI models, keep each first try, render all three the same way and stack them into one comparison video with model names and logos. Makes a 16:9 side-by-side for a newsletter and a 1080 x 1920 stacked reel for Instagram and TikTok. Use when someone says

motion-brief-writer

Turns a rough idea for an animated graphic into a precise build brief for Claude Code, in your own brand. Asks for anything essential first (exact numbers, size, length, brand), keeps real results apart from sample data, and never invents a figure. Use when someone says

motion-effects

Build any of 16 premium motion effects from scratch in your own brand, as one 8-second looping HTML file with window.seek(seconds) so it exports frame-exact to MP4 or GIF. Interfaces (button to player, search to results, card to workspace, tabs to panels), data (chart morph, dashboard zoom, spring stack, magnetic dock), type (masked type, elastic type, text to layout, image reveal) and systems (perspective shift, glass focus, flowing paths, particle logo). Use when someone says

motion-prompt-writer

Write a complete 8-part Claude Motion prompt (The bar, Format, The one rule, Look, Motion, Never, Before you finish, The scene) for one short looping motion graphic, in your own brand. Takes your brand (a website screenshot, a logo, hex codes, or nothing for the Apple-style default) and one moment you want to show, in plain words. Use when someone says

newsletter-promo

Turn a newsletter edition into a 12-20 second promo clip for LinkedIn, Instagram or X that drives people to read and subscribe. Hook question, three proof frames from the edition, then the newsletter name and where to read it. Use when someone says

reel-export

Turn any horizontal or square motion video into a 1080 x 1920 Instagram Reel or TikTok that uploads cleanly. Headline and logos inside the safe zone, H.264, yuv420p, limited colour range, bt709, a silent audio track when there is no sound, and an ffprobe check before upload. Use when someone says

reference-to-motion

Turn references you admire into a scene-by-scene Claude Motion prompt for your own topic and brand. Takes a video for the moves (screenshots, frames or a contact sheet of a reel or ad) and, optionally, a look reference for the style (a website, a brand, a moodboard). Use when someone says

title-sequence-3d

Make a cinematic 3D title sequence (8-15 seconds) in code with Claude Code and Three.js. A camera moves through a lit scene, such as a rainy street at night with brand names as neon signs, then a big question or title lands. Use when someone wants a scroll-stopping opener, a film-style intro,

vox-explainer

Make a short Vox-style documentary explainer (30-60 seconds) entirely in code with Claude Code. Torn paper, halftone texture, bold condensed type, motion on twos. Use when someone says

相关技能