hf-kit

HyperFrames blocks and style targets, measured from 48 YouTube videos

Thirteen animation blocks, sixteen style files with measured ranges, mix presets, generated sound effects and beds, a caption tool and a render checker, plus the research they came from.

$ git clone https://github.com/cig13zs/hf-kit

$ npx skills add cig13zs/hf-kit as an agent skill

blocks
13
styles
16
niches
16, one creator each
videos
48
runs on
HyperFrames 0.8.77
licence
MIT, audio CC0
The block demos in one reel. Each demo is a project in examples/.

Blocks

Each block is one HyperFrames sub-composition that rebuilds a row from a niche's steal list. The --hk-* tokens theme all of them at once, and variables set the text and timing. Hover a tile to play its demo, or tap it on a phone.

Demoed at 16:9

  • world-camera

    animated-explainer, Kurzgesagt

    "Long take through one world"

    landmarks, stations, title, accentOverride

  • pill-label

    animated-explainer, Kurzgesagt

    "Pill label on first appearance"

    text, actorColor, enterAt, holdSeconds

  • chapter-card

    animated-explainer, Kurzgesagt

    "Spoken chapter card"

    title, backgroundColor, textColor

  • ui-window

    animated-explainer, Kurzgesagt

    "UI window as evidence"

    title, message, progress, accentOverride

  • doc-highlight

    documentary, Johnny Harris

    "Highlighted source document"

    heading, before, highlight, after, highlightColor, revealAt

  • film-gate

    documentary, Johnny Harris

    "Film-gate archive look"

    radiusPx, blurPx, spreadPx, shadowColor

  • number-card

    tech-review, Marques Brownlee; challenge-spectacle, MrBeast

    "Numbers as cards, nothing else" and "Outlined money type"

    number, label, variant (clean or money), accentColor

  • progress-badge

    challenge-spectacle, MrBeast

    "One progress device"

    caption, changes, badgeColor

  • tier-board

    cooking, Joshua Weissman

    "Scoring spine carried to a champion"

    title, items, winnerTime, positiveOverride

Demoed at 9:16

  • zoom-through

    shorts-facts, Zack D. Films

    "Camera-move joins over hard cuts"

    fromLabel, toLabel, transitionTime, objectX, objectY, accentOverride

  • blur-swap

    shorts-vfx, Zach King

    "One-take look" and "Transformation on camera"

    beforeText, afterText, swapTime, frames, fps, accentOverride

  • face-banner-stack

    shorts-gaming, KreekCraft

    "Face-banner-content stack"

    layout, banner, faceLabel, contentLabel, topicLabel, bannerOverride

  • question-card

    shorts-podcast, The Diary Of A CEO

    "Question card over a stacked split"

    question, topLabel, bottomLabel, cardColor

Styles

A style file holds the ranges measured across one creator's three videos, with the tokens, caption variant, blocks and mix presets that go with them. tools/scaffold.py --style starts a project from one; tools/check.py --style measures your render against it. Below: hard cuts per minute by segment, and the median shot length.

Long form, 16:9. Cuts per minute; the bars share one scale from 0 to 62.
styleniche, creator0-15 s15-60 s60-180 sbodylast minmedian shot (s)
archive-essaydocumentary, Johnny Harris 24-48 25.3-32 26.5-43 13-22.8 1-4 1.64-2.71
world-explaineranimated-explainer, Kurzgesagt 0-4 2.7-8 4-6 4.5-5.2 3-12 6.54-9.37
build-payoffscience-entertainment, Mark Rober 28-56 30.7-61.3 23.5-48 15.6-46.3 26-59 1-2.12
challenge-metronomechallenge-spectacle, MrBeast 16-28 32-34.7 27-37 27.6-30.6 19-39 1.53-1.8
proof-reviewtech-review, Marques Brownlee 8-16 9.3-16 8.5-9 4.5-6.7 6-7 5.57-7.96
screen-newstech-news-screen, Fireship 12-16 10.7-20 11-18 7.5-18.6 2-8 2.67-3.73
series-gameplaygaming-longform, Grian no cut target: game menus read as cuts and some dark-scene cuts are missed none
campfire-storystorytelling-true-crime, MrBallen 0-20 0-2.7 1-4 0.8-3.2 3-7 7.92-20.04
tasting-tourcooking, Joshua Weissman 4-60 26.7-44 21.5-35 28.7-31.1 22-27 1.53-1.73
block-lessonkids-education, Numberblocks 0-8 0-10.7 2-9.5 9.7 3 4.08-45
calm-teachingcalm-faith, BibleProject no cut target: dissolves and morphs hide the cuts none
drawn-storytimeanimated-storytime, JaidenAnimations 0-24 18.7-21.3 15.5-22.5 23.3-24.8 6-10 1.88-2
Shorts, 9:16. Same scale. n/a means the style file sets no range for that segment.
styleniche, creator0-3 s3-15 s15-60 s60 s+median shot (s)
facts-shortshorts-facts, Zack D. Films 0 0-10 1.5-5.7 n/a 4.67-13.55
news-shortshorts-gaming, KreekCraft 0-20 6.7-15 n/a n/a 2.03-6
podcast-clipshorts-podcast, The Diary Of A CEO 0-20 5-30 13.3-30.7 15-30.7 1.5-2.43
one-take-trickshorts-vfx, Zach King 0 0 0 n/a 11-26

The ranges swing hard between niches: the documentary style opens at 24-48 cuts a minute and the explainer style at 0-4. Inside a niche, a higher cut rate didn't go with more views, so take a niche's rate together with its format.

How it was measured

Cut rate and loudness did not separate the outliers from their controls. A person at stake, the stake stated in the first seconds, proof on screen and a held answer did. Read both halves as hypotheses: each rests on three videos per creator.

There are 16 niches with one creator each. From a creator's latest 80 uploads we took the video with the highest views-to-median ratio, the highest ratio among the latest 30, and, as the control, the video closest to the median among the latest 30. Outlier ratios run from 1.62x to 44.32x and controls from 0.93x to 1.08x. Compilations, sponsored uploads, livestreams and anything over two hours were left out. Views were read on 26 September 2026.

Did not separate

  • Overall cut rate. Outliers cut slower than their control in 4 niches and faster in 4, and every faster case has a confound. Johnny Harris's outliers: 14.6-14.8 cuts/min, his control 23.4.
  • Median shot length, which follows the cut rate.
  • Integrated loudness: -5.6 to -33.9 LUFS across the 48, with no direction.
  • Designed transitions. 15 of 16 niches use no whip, glitch, spin or zoom as a habit, in outliers and controls alike.

Recurred in outliers

  • A person with something at stake: 6 niches.
  • The stake or claim in the first seconds: 6 niches.
  • Proof on screen: 5 niches.
  • The title's answer held back: 4 niches.
  • Denser speech in the first 30 s: 8 niches.
  • Fewer music-only stretches: 8 niches.

What each number is

hard cut
An ffmpeg scene score of 0.30 or more on a 160 px wide copy. Detections under 0.25 s apart count once.
segments
Long form: 0-15 s, 15-60 s, 60-180 s, the body, the last minute. Shorts: 0-3 s, 3-15 s, 15-60 s, 60 s on.
text share
The share of sampled frames where Tesseract reads two or more words at confidence above 70.
words per minute
From the YouTube caption track, over the whole video and over the first 30 s.
loudness
EBU R128 integrated loudness and loudness range, measured with ffmpeg.
silences
Stretches below -35 dB that last 0.4 s or longer.
music
Spectral-flux onsets, brightness and bass share in 10 s windows, and [music] tags in the captions.

Hard-cut counts are floors, since dissolves, whips, camera moves and overlays go uncounted. Every niche is one channel's house style. Nobody listened to the audio, and tempo under narration was too unstable to use. Views don't prove an edit caused them. The full tables, the confounds and a mood table are in research/TECHNIQUES.md.