mirror of
https://github.com/nexu-io/open-design.git
synced 2026-05-31 19:04:39 +07:00
* feat(prompt-templates): add 11 HyperFrames video prompts and surface media generation in README Adds eleven `hyperframes-*` prompt templates under `prompt-templates/video/`, each one a concrete brief with scene-by-scene timing, GSAP eases, palette, and the HyperFrames non-negotiables (deterministic, paused timelines, entrance-only motion, lint/inspect commands). Archetypes covered: - minimal product reveal (5s, 16:9) - SaaS product promo (30s, 16:9, Linear/ClickUp-style) - TikTok karaoke talking-head (9:16, TTS + word-synced captions) - brand sizzle reel (30s, beat-synced kinetic typography) - animated bar-chart race (NYT-style data infographic) - Apple-style flight map route (origin → destination) - 4s cinematic logo outro - $0 → $10K money counter hype (9:16) - 3-phone app showcase - 9:16 social overlay stack (X · Reddit · Spotify · Instagram) - 15s website-to-video pipeline Each template uses `model: "hyperframes-html"`, real catalog-block thumbnails from HeyGen's CDN as previewImageUrl, and source attribution to `heygen-com/hyperframes` (Apache-2.0). README also gets a new **Media generation** section between *Visual directions* and *Beyond chat*, plus a new row in the *At a glance* table. The section documents the three model families currently surfaced as templates (gpt-image-2, Seedance 2.0, HyperFrames) with example galleries — gpt-image-2 thumbnails, Seedance MP4-linked thumbnails, and the 11 HyperFrames tiles — and notes the wider model coverage (Kling, Veo, Sora, MiniMax, Suno, Udio, Lyria, TTS) already wired in `VIDEO_MODELS` / `AUDIO_MODELS_BY_KIND` and open for community templates. * i18n(de): register new HyperFrames templates, categories, tags Adds German titles/summaries for the 11 new hyperframes-* video templates plus the Product/Marketing/Data/Travel/Branding/Short Form categories and hyperframes/title-card/sizzle/etc. tags they introduce, so the German sync guarantees enforced by apps/web/src/i18n/content.test.ts hold. * docs(readme): sync Media generation section to de / ja / ko / zh-CN; bump counts to 93 (43 + 39 + 11) Mirrors the English Media generation row + section into the four locale READMEs (README.de.md, README.ja-JP.md, README.ko.md, README.zh-CN.md), translating prose / table headers / captions while keeping the gpt-image-2, Seedance MP4, and HyperFrames catalog-block thumbnails identical across all five locales so the galleries render the same images. Counts updated to reflect current main (after rebase): 43 gpt-image-2 + 39 Seedance + 11 HyperFrames = 93 prompts total. The English README's At-a-glance row, intro paragraph, and gallery sub-headers now read "sample of 43" / "sample of 39" / "11 ready-to-replicate templates" — locales follow. Resolves the Codex review's German-i18n flag end-to-end: README copy is in sync, and the German content map (DE_PROMPT_TEMPLATE_*) was already extended in the prior commit on this branch. * feat(prompt-templates): video previews + provider badge + source filter for HyperFrames - Add `previewVideoUrl` to all 11 HyperFrames video templates so the preview modal plays the real catalog clip instead of falling back to a static image. - Add a per-card provider badge (top-left thumbnail chip) keyed off `source.repo`. HyperFrames cards get a HeyGen-accent gradient so they are identifiable at a glance; other repos get a neutral pill. - Add a Source filter dropdown next to Category in PromptTemplatesTab, populated from the small enumerated repo set (HyperFrames, Seedance 2, GPT Image 2, Open Design). Auto-hides when only one source is present. The text search now also matches the provider name. - Wire i18n keys `promptTemplates.allSources` and `promptTemplates.sourceFilterAria` across all 9 locales.
19 lines
3.2 KiB
JSON
19 lines
3.2 KiB
JSON
{
|
||
"id": "hyperframes-tiktok-karaoke-talking-head",
|
||
"surface": "video",
|
||
"title": "HyperFrames: 9:16 TikTok Talking-Head with Karaoke Captions",
|
||
"summary": "A vertical 1080×1920 HyperFrames short — TTS-narrated talking-head over a face-cam loop, with karaoke-style word-synced captions, animated lower third, and a tiktok-follow overlay at the end. Mirrors the may-shorts-19 archetype from the HyperFrames student kit.",
|
||
"category": "Short Form",
|
||
"tags": ["hyperframes", "vertical", "tiktok", "captions", "karaoke", "tts"],
|
||
"model": "hyperframes-html",
|
||
"aspect": "9:16",
|
||
"prompt": "Build a 25-second HyperFrames vertical short (1080×1920, 30fps) for a TikTok-style talking-head clip with karaoke captions. Generate the narration with `npx hyperframes tts` first, then transcribe word-level timings with `npx hyperframes transcribe`. Pull `npx hyperframes add tiktok-follow` and `npx hyperframes add yt-lower-third` (we'll use the lower-third as a name plate, mid-clip). Use the css-patterns reference for word highlighting (marker / clip-path / scatter).\n\nVisual identity: warm canvas #1a1410, single hot accent #ff5e3a, off-white #fff8f1 for text. Display: \"Druk Wide\" 84px (or \"Anton\") for caption words; body \"Inter\" 26px for the lower-third name plate. Captions should be tone-adaptive — emphasis words pop with the marker-sweep pattern; numbers use clip-path slam.\n\nLayer structure (root composition):\n• Track 0: <video> face-cam.mp4 (muted, playsinline) full-bleed, slightly cropped, with a 8px inset border in #ff5e3a at 30% opacity.\n• Track 1: <audio> narration.mp3 (data-volume=1) generated by `hyperframes tts`.\n• Track 2: caption stack (sub-composition `captions.html` loaded via data-composition-src). Captions group by 2–3 words per chunk, max 28 chars per line, sit at y=78% of screen. Each word entry: y=24→0 + opacity 0→1 ease power3.out 0.18s, with the active word color-flipping to #ff5e3a on its own start frame (use tl.set(...) inside the timeline at the word's data-start, not at construction time). Exit by clip-path inset wipe over 0.12s right before the next chunk enters.\n• Track 3: lower-third (`yt-lower-third` block, repurposed) entering at 5.0s from x=-360→0 ease expo.out 0.7s, holding 4s, exiting via the transition at 9.5s.\n• Track 4: tiktok-follow overlay enters at 22.0s, holds to 25s end, no exit.\n\nNon-negotiables: captions never overlap or run off-frame — use `window.__hyperframes.fitTextFontSize(...)` for any chunk longer than 22 chars; min font 60px on captions for legibility on mobile; deterministic only; all timelines paused:true; root data-duration=25.\n\nQuality: run `npx hyperframes lint`, then `npx hyperframes validate` (WCAG contrast must clear 4.5:1 against the face-cam frame at 5 sample timestamps), then `npx hyperframes inspect --samples 12`. Fix any overflow, then dispatch render. Output: `tiktok-karaoke-25s.mp4`.",
|
||
"previewImageUrl": "https://static.heygen.ai/hyperframes-oss/docs/images/catalog/blocks/tiktok-follow.png",
|
||
"previewVideoUrl": "https://static.heygen.ai/hyperframes-oss/docs/images/catalog/blocks/tiktok-follow.mp4",
|
||
"source": {
|
||
"repo": "heygen-com/hyperframes",
|
||
"license": "Apache-2.0",
|
||
"author": "HeyGen",
|
||
"url": "https://x.com/HeyGen/status/2047333014024396873"
|
||
}
|
||
}
|