Skip to main content

overview-video

Rebuild or update the course overview video (about 98 seconds) for this course in videos/overview. Use when running /overview-video, or when asked to refresh the course overview video, add a chapter or feature to it, retake its dark-mode app screenshots, change its copy or timing, add music, or render a new MP4.

소스 정보

저장소
github/copilot-app-for-beginners
최근 소스 활동
2026년 10월 6일 02:15
감지된 SKILL.md 언어
영어
스타
54
포크
70

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
overview-video
description
Rebuild or update the course overview video (about 98 seconds) for this course in videos/overview. Use when running /overview-video, or when asked to refresh the course overview video, add a chapter or feature to it, retake its dark-mode app screenshots, change its copy or timing, add music, or render a new MP4.
# Course Overview Video The project in `videos/overview` makes a 1920x1080 overview video of about 98 seconds for the course. It is a HyperFrames project (HTML + GSAP, rendered to MP4). `video.config.json` controls all of the copy, timing, and screenshots. `scripts/build.mjs` generates `index.html` from it. Never edit `index.html` by hand. Read `videos/overview/README.md` for the file map and scene list, and `videos/overview/frame.md` for the design system. ## Requirements - Node.js 22+, ffmpeg and ffprobe, and ImageMagick (`magick`). - HyperFrames runs with `npx --yes hyperframes@0.8.134`. You do not install it. - For new screenshots: macOS, the signed-in `demo` persona, and the [`github-copilot-app-automation`](../github-copilot-app-automation/SKILL.md) skill. ## Workflow Work from `videos/overview`. 1. **Decide the change.** Read the course `README.md` and the chapter READMEs to find what changed (new chapter, renamed feature, new app UI). Keep the total near 90–100 s: when you add time in one place, remove it from another. Keep durations on a 0.5 s grid. Think like a beginner: give each chapter at least 5.5 s and each screen at least 3 s, and cut content before you shorten them. 2. **Update `video.config.json`.** - A chapter needs `num`, `short` (tracklist label), `studio` (the chapter's "From the Studio" name), `headline` (two lines of about 17 characters or fewer, the second is shown in the gradient), `sub` (one plain line), `duration`, and either `shots` or `canvas`. - Headlines name the app feature (for example, "Put it on repeat / with automations."). Use the studio analogy only in `studio` labels. Do not use jargon such as "worktree" or "MCP" without a plain `sub` line. - A shot is `{ "src": "<name>", "focus": [left, top, right, bottom] }` in 1920x1080 screenshot pixels. The camera pushes in to the focus box. A focus ring is drawn when the box is small. Use `"ring": false` to hide the ring, or `"ring": [l, t, r, b]` to draw it on another box. Use `"fallback": "<name>"` when a shot can be missing. - Several shots in one chapter share its duration and change by crossfade. Use no more than three shots in one chapter. A shot can set its own `"duration"`. - A shot can play a screen recording: add `"video": "assets/clips/<name>.mp4"` (1920x1080, H.264, no audio). `src` is the still that shows when the clip is missing. Optional: `"mediaStart"` (seconds to skip) and `"rate"`. - `"moves": [{ "at": 1.5, "focus": [l, t, r, b], "dur": 1.2 }]` replaces the default push with timed camera moves (`at` is seconds into the shot). Use it to follow the action in a video shot. Use `steps` with a `step` index on each shot to light a step rail. - `float` adds mono pills near the card (for example, mode names). Use it only when it helps a beginner read the screen. 3. **Retake screenshots when the app UI changes.** Follow the `github-copilot-app-automation` skill with these rules: - Run the persona on the laptop screen: export `COPILOT_CAPTURE_DISPLAY=builtin` in every command that runs `prepare-persona.sh` or `capture-window.sh`. - Switch the persona to a dark theme in **Settings > Themes** before you capture, and set the original theme again when you finish. - Do not add `--callout`, `--box`, `--arrow`, or `--crop`. Video cards must be clean. - Save to `videos/overview/assets/shots/<name>.png` (the script also writes `.webp`). Only the WebP files are committed. - Do not set `TMPDIR` to a folder in the repository. - Agent-at-work shots (`session-plan`, `session-working`, `session-diff-live`, `browser-preview`) need a real session in the persona. Get the user's approval before you send a prompt. Use a new worktree and Plan mode. Do not push, open a PR, or merge. Archive the session when you finish. - Find focus boxes from a half-size preview of each shot, then double the coordinates. - Screen recordings are not sanitized. Hide the sidebar while you record, check frames every 0.5 s for names, handles, and paths, and cover any that show. 4. **Build and check.** ```bash npm run check ``` Lint must report 0 errors, and check must pass. The structure warnings (`nested_structure_needs_subcomposition`, `timeline_track_too_dense`) are expected for this generated, single-file composition. If `composition_heavy_overlay_count_high` shows, remove blur, radial-gradient, or clip-path elements until it goes away. Otherwise, the render can show black frames. 5. **Inspect frames.** ```bash npm run snapshot ``` Open `snapshots/contact-sheet-*.jpg`. Check every headline at its settled time with `--zoom "#<id> .ch-head"` (and the hook, studio, lockup, and end titles): no letter may be cut off at the edges or below the baseline (`?`, `g`, `s`, and `y` are the usual problems). Also take snapshots 0.1 s before and 0.2 s after each cut that you changed (`npx --yes hyperframes@0.8.134 snapshot --no-end --at ...`). Look for tight word spacing, text that overflows, empty frames, and cluttered card crossovers. 6. **Preview, then render.** Run `npm run dev` for Studio. Render only after the user approves: ```bash npm run render # renders/video.mp4 npm run music -- path/to/track.mp3 --start 8 # renders/video-with-music.mp4 ``` 7. **Music.** When a track is longer than the video, find its tempo and beat phase and its big hits and quiet parts (for example, with numpy on a mono decode). Then set `music.segments` so beats land on the 0.5 s cut grid and the big hits land on key cuts: the reveal, Chapter 07, and the end card. Make each edit on a downbeat in a section of similar loudness. Check the result: the level change at each edit should be within normal beat-to-beat change, and the loudness about -14 LUFS. 8. **Export.** Run `npm run export` to replace the committed web copy at `videos/copilot-app-for-beginners-overview.mp4`. Keep it under 50 MB (GitHub warns above that; the repo does not use Git LFS). 9. **Report** the MP4 paths, the final duration, and any shot that used a fallback (`build.mjs` prints a warning for each). ## Rules - Keep every visual in the video's own dark style. Do not drop in the course's cartoon illustrations; they look out of place. - Keep the copy short and true to the course. Do not claim features that the chapters do not teach. - Keep motion professional: no `back`, `elastic`, or bounce eases, and no infinite loops. - Keep timing deterministic: no `Math.random`, clocks, or network data at render time (the build uses a seeded random generator). - Screenshots must come from the sanitized persona. Before you commit, check each one for private names, paths, or tokens. - `renders/` and `snapshots/` are not committed.
GitHub에서 보기