app-ui-mockups
Skill23 starsChanged 8 months agoMITView on GitHub
Ten animated UI mockups for product, launch and dev-tool videos, rebuilt as HTML instead of screen recordings: phone message thread, team chat channel, coding-agent terminal session, terminal command run, desktop terminal window, desktop notification banner, code editor walkthrough, 3D code slab, exploded UI panels and an amber CRT console. Presets give typing speed (12-20 characters per second with seeded gaps), reading holds from character count, entrance easing and scale, camera lead before each action, text size as a share of frame height, and theme colors from MIT theme sources, from Charm VHS, Screen Studio, Emil Kowalski, Apple HIG and Netflix timing rules. Use when someone wants a fake text or Slack conversation, a terminal or Claude Code demo, a code walkthrough or an exploded UI shot in a video. NOT for recording a real screen or for real people's messages presented as genuine.
In this repository75 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- llms.txtllms.txt
- ad-creative-testingSkill
- ai-ad-compliance-checkSkill
- ai-ugc-ad-videoSkill
- caption-stylesSkill
- character-passportSkill
- code-to-video-previzSkill
- ecommerce-video-adsSkill
- ecommerce-video-editSkill
- edit-footage-with-codeSkill
- find-referencesSkill
- footage-effectsSkill
- gpt-image-2-6Skill
- gpt-image-gifSkill
- gpt-image-markup-editSkill
- gpt-image-sprite-sheetSkill
- gpt-image-sticker-packSkill
- how-to-make-ai-videoSkill
- kinetic-type-artSkill
- kling-4-action-montageSkill
- kling-4-keyframe-filmSkill
- kling-4-promptingSkill
- make-a-woke-profile-with-chatgptSkill
- maps-and-data-motionSkill
- media-downloadSkill
- media-judgeSkill
- motion-formatsSkill
- paper-shadersSkill
- product-photo-to-videoSkill
- product-video-hooksSkill
- short-form-ffmpeg-cookbookSkill
- social-overlaysSkill
- threejs-animaticSkill
- tiktok-shop-videoSkill
- title-designSkill
- transition-craftSkill
- varg-ad-library-remixSkill
- varg-ad-localizeSkill
- varg-ad-variantsSkill
- varg-aiSkill
- varg-birthday-videoSkill
- varg-character-absurdSkill
- varg-character-beautiful-womanSkill
- varg-character-big-guySkill
- varg-character-cartoonSkill
- varg-character-cringeSkill
- varg-character-designSkill
- varg-character-fitnessSkill
- varg-character-grandmaSkill
- varg-character-keynoteSkill
- varg-consistent-charactersSkill
- varg-dropship-reelSkill
- varg-mascot-jingle-adSkill
- varg-mockupsSkill
- varg-music-videoSkill
- varg-occasion-videoSkill
- varg-podcast-videoSkill
- varg-previzSkill
- The first 60 shown.
The file
We split this skill into the rules it gives an agent
6 rules. About 0 are common, 4 are distinctive, and 2 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈4
Distinctive · estimate
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 34
Invented people, real product: Use invented names and workspaces in chats.
- Distinctive: line 36
Free fonts only: Every font in the presets is OFL or Apache.
- Very specific: line 37
Seek-safe: Every value is a function of timeline time.
- Distinctive: line 71
After a command hold 3 s (short output) / 5 s (long).
- Distinctive: line 77
No platform logos; invented people and workspaces.
- Very specific: line 83
Every rule in the references cites its source by number.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
App UI mockups: chats, terminals, code and notifications for launch videos
Ten UI scenes rebuilt as HTML so they look clean, read at a human pace and render the same every time. Typing, streaming and holds follow measured reading and typing speeds rather than guesses.
Gates
- Invented people, real product. Use invented names and workspaces in chats; never put words in a real person's mouth or show a conversation as genuine when it is not.
- No platform logos. UIs are recognisable look-alikes; the platforms' names, logos and UI looks are their owners' trademarks.
- Free fonts only. Every font in the presets is OFL or Apache. Swap in the person's brand font only if they have a license for video.
- Seek-safe. Every value is a function of timeline time; randomness is seeded by frame. No
Date.now(),requestAnimationFrameor unseededMath.random(). - No credits here. These templates render locally for free. Generated footage, voice or music is the varg-ai skill: call
estimate_costand wait for the person's approval before any generation.
Pick a template
10 templates, 40 presets. Each reference file has the same sections: how the pros do it (every rule cited), presets, timing and numbers, how to build it, mistakes that look amateur, sources. Each JSON file holds the same presets as machine-readable values.
| Template | Use it for | Presets | Files |
| Coding-agent terminal session | One AI coding-agent turn (Claude Code-style) in a terminal: prompt, tool calls, diff, spinner, summary. | Prompt and tool calls, Code edit, Still working, Huge type | agent-terminal-session.md · json |
| Amber booth console | A retro amber projection-booth touchscreen boots, loads your show, counts down and draws your end card. | Boot, load, end card, Clean amber, Footage to amber CRT | amber-booth-console.md · json |
| Code editor walkthrough | A VS Code-style guided tour: scroll to a line, highlight it, open a comment thread per step. | Dark 2026, Light 2026, Editor only (vertical) | code-editor-walkthrough.md · json |
| 3D code slab | Syntax-highlighted code on a lit, bevelled 3D slab that turns through space and settles face-on. | GitHub Dark, Dimmed, One Dark, Dracula | code-slab-3d.md · json |
| Desktop notification banner | A macOS-style notification banner with an app icon that springs in at the top right and tucks back out. | Light, Dark, Stack, Huge (phone) | desktop-notification-banner.md · json |
| Desktop terminal window | An editable classic desktop terminal window (macOS Terminal-style) that types and runs a short session. | Basic (light), Pro (dark), Green retro, Amber retro | desktop-terminal-window.md · json |
| Exploded UI panels | An app screen's layers float apart in 3D around an orbiting camera, then slide home into the finished screen. | Orbit and collapse, Isometric stack, Phone layers | exploded-ui-panels.md · json |
| Phone message thread | A messaging-app conversation (iMessage-style bubbles) that plays out bubble by bubble for hooks, ads and stories. | Two people, Typing (dark), Group chat, Photo, voice memo, link preview, Reactions + read receipt, Huge texts | phone-message-thread.md · json |
| Team chat channel | Messages, unfurls, threads and reactions landing in a Slack-style channel for B2B launches and social proof. | Conversation, Link unfurl, Thread, Reactions, Huge type | team-chat-channel.md · json |
| Terminal command run | A command typed and run in a modern GPU terminal (Ghostty-style), with output, a progress render or a git log. | Command and output, Render with progress, Git log, Huge type | terminal-command-run.md · json |
Workflow
- Match the request to a template and one or two presets from the table. Say which and why in one line, and show the person the preset names with their one-line looks before building anything.
- Read the reference for that template, and load its JSON. Take values from the JSON; do not re-guess them.
- Build it the way the reference's "Build it" section says, starting from the named HyperFrames blocks or varg components where it names them. Drive every value from timeline time so any frame renders the same on a re-render.
- Fit it to the brand: swap in the person's colors and fonts only where the reference allows, then re-check contrast and safe zones with the numbers in "Timing and numbers".
- Check a draft: render stills at the key moments (entrance, hold, exit), go through "Mistakes that look amateur", and fix before the final render.
Rules that hold for every template
- Rebuild the UI as HTML, don't screen-record: clean surface, deterministic timing.
- Hold readable UI text clamp(0.6 + chars/15, 1.0, 6.0) s (238 wpm reading, 20 cps subtitle cap).
- Typing 12–20 cps with seeded uneven gaps (33–200 ms, longer at spaces and before flags); 30 cps for long commands; agent/system text streams 40–80 cps in word bursts.
- After a command hold 3 s (short output) / 5 s (long); terminal demos under 30 s; speed up long output instead of cutting.
- Entrances ease-out, <300 ms for UI parts, transform + opacity only, from scale ≥0.93 (chat bubbles 0.75 from the sender's corner), never from 0.
- Camera moves ~1 s before the action; zoom clamped to UI bounds; settle before text must be read.
- Desktop UIs drawn at 1.25–1.5x; readable text ≥2.2% of frame height (terminal/code 2.6–3.3%); show only the window.
- Theme colors from MIT theme sources; never mix palettes (Dracula, GitHub Dark/Dimmed, One Dark, VS Code 2026).
- OFL stand-ins: Inter for SF Pro, Lato for Slack, JetBrains Mono for SF Mono, VT323 for retro.
- No platform logos; invented people and workspaces; no invented quotes as real.
Built from
Charm VHS source + practice guide; Emil Kowalski (@emilkowalski); Adam Pietrasiak (@pie6k, Screen Studio); Netflix Timed Text + Brysbaert; VS Code/Primer/Dracula/One Dark theme sources; Apple HIG; Samuel Kraft; Thorsten Ball ("How to Demo"); David Sheldon-Hicks (Territory Studio).
Every rule in the references cites its source by number. The full list, with links and what was taken from each, is in references/sources.md. Values marked as house defaults in a reference are our own starting points where no expert published a number.
Related skills
- varg-video-edit-library: UI walkthroughs, cursors, device mockups, code and terminal edits.
varg-imessage-video(code2video-templates): a ready iMessage renderer.- HyperFrames registry (
npx hyperframes catalog --query "…"): about 450 ready-made blocks; the references name the ones to start from.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

