screen-ui-redesign
Skill6 starsChanged 19 days agoMITView on GitHub
Recreate the screens of a recording as designed motion UI - the app's own screens, layout, colours and words, redrawn larger and cleaner for 9:16 and built only from what the recording shows. Use when screen footage will not read at the destination, or when the UI is only the means and a designed version tells the step better.
In this repository67 other files it gives its agents.
- ai-presenterSkill
- animate-designSkill
- app-ui-animationSkill
- asset-auditSkill
- assetsSkill
- background-musicSkill
- caption-decorationsSkill
- character-riggingSkill
- custom-transitionsSkill
- design-layer-importSkill
- drama-series-writingSkill
- edit-footageSkill
- edit-on-your-computerSkill
- edit-pipelineSkill
- face-hidingSkill
- figma-storyboard-animationSkill
- film-animaticSkill
- film-cast-designSkill
- film-cuttingSkill
- film-finishingSkill
- film-shot-generationSkill
- film-story-writingSkill
- footage-analysisSkill
- footage-reframingSkill
- generate-mediaSkill
- get-startedSkill
- large-scene-assemblySkill
- linked-element-motionSkill
- make-characterSkill
- make-comicsSkill
- make-screen-videosSkill
- make-short-dramaSkill
- motion-design-craftSkill
- motion-intentSkill
- motion-pattern-librarySkill
- motion-reviewSkill
- motion-scene-continuitySkill
- motion-tracking-from-videoSkill
- movie-producerSkill
- open-picsart-appSkill
- photo-slideshowSkill
- picsart-add-mediaSkill
- picsart-video-rulesSkill
- quality-reviewSkill
- quick-merge-and-exportSkill
- realistic-color-gradeSkill
- recastSkill
- recreate-videoSkill
- reel-structureSkill
- reference-fragment-matchingSkill
- resting-frame-rulesSkill
- retention-hooksSkill
- scene-3d-authoringSkill
- scene-animation-referenceSkill
- scene-building-basicsSkill
- scene-template-remixSkill
- screen-recording-analysisSkill
- screen-recording-layoutsSkill
- screen-recording-zoomSkill
- sd25-peSkill
- The first 60 shown.
The file
We split this skill into the rules it gives an agent
5 rules. About 0 are common, 4 are distinctive, and 1 is 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.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- could be automatic: a setting could enforce it
- Distinctive: line 15
Redraw the real app, never invent one: Keep its layout, the kinds of its components, its colours, its words and the user's own typed text.
- Distinctive: line 18
Never draw a different UI or a component the app does not have: dark cards labelled WIDE and MEDIUM, where the app shows a light shot-list …
- Distinctive: line 25
Never add a state, an option or a result the recording does not show.
- Distinctive: line 26
Fewer, not other: Leave out what the step does not need (menus, settings rows, other cards).
- Very specific: line 87
Check the beat on a contact sheet at each state's at plus 1 s, as the quality-review skill says: every word large, nothing overlapping, the …
≈ “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
Designed UI
A screen recording cropped into a vertical frame is tiny and dense: viewers swipe at the cut to it. The same moment, redrawn as a few large elements, reads at a glance. The redraw is a claim about the product, so it is the app's own screen made larger, never a different one.
What stays true
- Redraw the real app, never invent one. Keep its layout, the kinds of its components, its colours, its words and the user's own typed text. Make them larger, cleaner and fit for 9:16, then add motion. A light chat stays a light chat; a magenta button stays magenta. Never draw a different UI or a component the app does not have: dark cards labelled WIDE and MEDIUM, where the app shows a light shot-list board with "Shot size Medium" chips, is an invented UI.
- You may crop and add the picture. Show only the one component that matters, and add the shot's picture (a still) as a visual inside it.
- Every element is something on a still. Its words, values and states are copied from the still sheets, letter for letter: the same labels, the same numbers, the same order of states. Never add a state, an option or a result the recording does not show.
- Fewer, not other. Leave out what the step does not need (menus, settings rows, other cards). Never merge two states into one the app never showed.
- Each state names its recording second (
seen). The script refuses a state without one. It covers the look as well as the words: every element maps to something that still shows. - Your own words go in labels, not in the UI: a
tagon a card ("kept wide") points at a fact the states show; a chip or a bubble holds only the app's own text. - A thumbnail is a still of the recording, through the privacy pass like every still.
- Where honesty needs proof (a result the product made, a claim a viewer would doubt), one frame of the real recording goes beside the redraw: the hook or the payoff, held.
Mapping the recording to elements
| On the still | Element | Fields |
| A card, a tile, a row with a picture | card | title, chip (its key value), image (a still, cropped to the picture), tag |
| A message typed into a chat or a search box | bubble | text |
| A setting, a badge, a value on its own | chip | text |
| A menu, a list of options | list | items, at most the ones the step uses |
| The button pressed | button | label |
The thing that changes is one element across states, never two: the card whose chip goes from
"Shot size Medium" to "Shot size Close-up" is the same card in both states, with set on the second.
Building a beat
From this skill's folder, run python3 scripts/ui_beat.py <file>. Never place or keyframe the
elements yourself. Its docstring lists every field. In short:
box,startandduration: where and when the beat plays, in frame px and scene seconds;styleandfont: the app's own colours, read from the stills (canvas,surface,ink, and its primary button's colour asaccent), and the scene's font;elements: each element by name, with its first values;states: each screen in order, withat(its beat second),seen,show(top to bottom),set(what changes from here),tap(the element pressed to cause it) andsource(the still of theseensecond). States sit at least 1.5 s apart, so each is read before the next moves.
It prints {layers, assets, duration, states, diagnostics}. Add the layers to the scene and the
assets (each thumbnail is a nested scene) to its assets. No layer uses a mask. Act on each
warning: typing_cut (a bubble sent before its text has typed out: move that state later),
long_text (shorten to what the still shows first), never_shown, no_source (a state with no
still to compare: name the still). Input it cannot build exits 1 with the field to fix.
How it moves
The script fixes the motion so every beat reads alike. The craft behind it is the motion-design-craft skill's: matched-element smart-animate, entrances by role staggered by hierarchy, a press before the state it causes.
- Matched elements are carried. A card in two states moves to its new place on the house
curve,
cubic-bezier(0.65, 0, 0.2, 1), over 0.5 s, and is never cut or faded. - New elements enter after the moves start, sliding up 60 px and fading in over 0.5 s on
cubic-bezier(0.16, 1, 0.3, 1), 0.1 s apart, in the order shown. Rows of a list stagger behind the first. An element a state drops leaves upward in 0.3 s. - A tap comes before the change: the pressed element dips to 0.92 and back in the 0.35 s before its state; for a bubble, its send button.
- The change pops, 0.5 s into its state: the old pill fades, the new one scales 0.6, 1.1, 1
in the accent. A thumbnail with a new
zoompushes in over 0.9 s. - A bubble types once it has risen, at about 0.045 s a character.
Compare it with the recording
Check the beat on a contact sheet at each state's at plus 1 s, as the quality-review skill says: every
word large, nothing overlapping, the changed value plain. Then put each state's source still
next to its designed frame and compare them: the same layout, component kinds, colours and words.
Fix any element with no match on the still, or one that looks like another app, and build the
beat again. Do this before the video is rendered for review or export, never after.
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.

