slideshow

Erstelle eine HyperFrames-Slideshow-Komposition – eine Präsentation, Pitch-Deck oder interaktive Präsentation mit einzelnen Folien, Fragment-Einblendungen, Verzweigungssequenzen und Hotspot-Navigation. Verwende dies als Absichtsprüfung, wenn der Nutzer nach einer Präsentation, einem Pitch-Deck, einer Folienpräsentation, einem interaktiven Deck oder einer Seiten-zu-Deck-Konvertierung fragt, die eine Slideshow sein könnte; falls der Nutzer nicht explizit nach einer Slideshow / Folienpräsentation gefragt hat, bestätige vor dem Erstellen.

npx skills add https://github.com/heygen-com/hyperframes --skill slideshow

Plugin installs: Before setup or freshness commands, follow plugin execution rules when this skill is inside a HyperFrames plugin.

HyperFrames slideshow

A slideshow is a normal composition (the /hyperframes contract applies) plus one JSON island that says which scenes are slides and how they connect. The deliverable is a running deck, not an MP4.

What changes from a video project

  • Each slide is a top-level scene in the composition file: data-composition-id, data-start, data-duration, data-label, data-width, data-height. There is no master root composition wrapping them.
  • One island per composition, near the top of <body>, written in the HTML (never generated by script; present reads the file statically):
<script type="application/hyperframes-slideshow+json">
  {
    "slides": [
      { "sceneId": "hook", "notes": "Pause on the number." },
      {
        "sceneId": "problem",
        "fragments": [11.0, 15.0],
        "hotspots": [
          {
            "id": "h1",
            "label": "Where does $40B come from?",
            "target": "market-detail",
            "region": { "x": 55, "y": 60, "w": 40, "h": 20 }
          }
        ]
      }
    ],
    "slideSequences": [
      { "id": "market-detail", "label": "Market sizing", "slides": [{ "sceneId": "mkt-math" }] }
    ]
  }
</script>
  • sceneId equals a scene's data-composition-id (or give startTime/endTime). notes are presenter-only. ttsScript, ttsAudioUrl and ttsDurationMs are reserved and not wired yet.
  • Fragments are absolute timeline times (the same clock as data-start, not offsets inside the slide) within the slide's [start, end]. Navigation seeks, it never plays: each hold state must look right when the timeline is seeked straight to that time. A slide without fragments enters at a rest frame inside it.
  • Branch slides are ordinary scenes listed only in slideSequences, never in the main slides array. A hotspot's target is a sequence id; region is a percentage box (omit it for a full-slide button). Back returns to the slide that held the hotspot.
  • Text the audience must read is at least 40 px at 1920×1080. Before hand-building any named visual, search npx hyperframes catalog --query "<the visual, in English>" --json: it ranks the whole registry with nothing installed.

Porting an existing page

  • Keep the source's look, motion, interactions and media behaviour; port its widgets, players and visualizers rather than approximating them.
  • Movement the page drove by scroll, wheel or a camera layer becomes a camera move from one focal point to the next on slide navigation, never a page visibly scrolling. Keep each move direct, without reversals the source doesn't make.
  • Screenshots, posts, charts, code and any image with readable text are evidence: keep their aspect (object-fit: contain) and check all four edges for crops.
  • Every copied <video>/<audio> needs data-start and data-duration (data-has-audio="true" when its sound plays), and no preload="none". Custom media chrome reads the native element's events and currentTime, never its own timer.
  • Hidden stacked slides need opacity: 0, visibility: hidden and pointer-events: none together, or an invisible layer swallows clicks.

Present and hand off

  • Never render a deck to MP4: render keeps only the first scene and truncates silently. For stills, snapshot --at each slide.
  • Run npx hyperframes check --json until it is clean. The slideshow rule checks that every sceneId resolves, every hotspot target exists, fragments sit inside their slide, and main-line slides don't overlap.
  • Serve it with npx hyperframes present <project-dir> and hand over the URL it prints: "Click Present, or press P, to open the audience tab."
  • The project's root index.html should open as a working deck: <hyperframes-slideshow> around <hyperframes-player src="…">, with the raw composition in a subfolder if needed. The component owns Present (P), Prev/Next, the counter, global mute, fullscreen, swipe, hotspots, presenter notes (editable, kept per deck) and stopping media on slide exit. Don't build your own versions of any of these.
  • Screen sharing: in Google Meet share the audience tab, which keeps rendering in the background. In Zoom drag the audience tab into its own window and share that; a fully covered window freezes.
  • A deck opened from the bare player bundle without present needs workarounds: references/standalone-harness.md.

Mehr Skills von heygen-com

hyperframes-audio
heygen-com
Use when audio already placed in a HyperFrames composition needs to be mixed: a music bed that fights a voiceover (voiceover carve), effects on a track (EQ, compressor, limiter, gate, saturation, delay, reverb, chorus, phaser, bitcrush), or automation envelopes drawn on a track's volume or any effect parameter. Don't use for sourcing or generating audio — finding BGM, SFX, or making a voiceover is `/media-use`. Don't use for clip timing or track layout, which is `/hyperframes-core`.
hyperframes-cli
heygen-com
HyperFrames CLI dev loop — `npx hyperframes` for scaffolding (init), validation (lint, inspect), preview, render, and environment troubleshooting (doctor, browser, info, upgrade). Use when running any of these commands or troubleshooting the HyperFrames build/render environment. For asset preprocessing commands (`tts`, `transcribe`, `remove-background`), invoke the `hyperframes-media` skill instead.
developmenttestingapi
hyperframes-animation
heygen-com
Sämtliches Animationswissen für HyperFrames – atomare Bewegungsregeln, mehrphasige Szenenbaupläne, Szenenübergänge, umfassendere Motion-Design-Techniken UND die sieben Laufzeitadapter (GSAP-Standard, plus Lottie, Three.js, Anime.js, CSS-Keyframes, Web Animations API, TypeGPU). Für jede Bewegungs- oder Animationsaufgabe verwendbar: 2-4 Regeln auswählen und kombinieren, einen Bauplan laden oder laufzeitspezifische API nachschlagen (z. B. GSAP-Easing / Lottie-Player / Three.js-Mixer). HyperFrames-nativ: einzelne pausierte Timeline, suchsicher,...
creativedevelopmentdesign
hyperframes-core
heygen-com
HyperFrames HTML-Kompositionsvertrag. Verwendung für Kompositionsstruktur, Datenattribute, Clips, Tracks, Unterkompositionen, Variablen, Medienwiedergabe, deterministische Renderregeln und Validierung minimal renderbarer Projekte.
developmentmediacreative
hyperframes-media
heygen-com
Asset-Vorverarbeitung für HyperFrames-Kompositionen — Multi-Provider TTS (HeyGen / ElevenLabs / Kokoro lokal), Multi-Provider BGM (Google Lyria / lokales MusicGen), Whisper-Transkription, Hintergrundentfernung und Untertitel-Erstellung. Verwendung für npx hyperframes tts, bgm, transcribe, remove-background, voice/provider-Auswahl, music-mood-Prompting, captions / subtitles / lyrics / karaoke / per-word-styling.
mediaaudiovideo
hyperframes-registry
heygen-com
Installieren und einbinden von Registry-Blöcken und -Komponenten in HyperFrames-Kompositionen. Verwenden beim Ausführen von hyperframes add, Installieren eines Blocks oder einer Komponente, Einbinden eines installierten Elements in index.html oder Arbeiten mit hyperframes.json. Umfasst den add-Befehl, Installationsorte, Einbindung von Block-Unterkompositionen, Zusammenführung von Komponenten-Snippets, Registry-Erkennung und Erstellung eines neuen Blocks oder einer neuen Komponente für einen Upstream-Beitrag (Idee → Gerüst → Validierung → PR).
developmentapicode-review
general-video
heygen-com
Wird als Fallback für die Erstellung benutzerdefinierter HyperFrames-HTML-Videokompositionen verwendet, wenn kein spezialisierter Workflow passt. Deckt längere oder mehrszenige Stücke, Brand-/Sizzle-Reels, Montagen, Titelcards, Motion-Poster in voller Länge, statische Loops und freie Kompositionen jeder Länge oder jedes Formats ab. Nicht für vermarktete Produkt-Promos (product-launch-video), allgemeine Website-zu-Video-Aufnahmen (website-to-video), thematische Erklärvideos (faceless-explainer), GitHub-PR-Videos (pr-to-video), Untertitelung vorhandenen Filmmaterials...
videocreativemedia
motion-graphics
heygen-com
Verwenden, wenn der Benutzer ein kurzes, designorientiertes Bewegtbild wünscht, bei dem die Bewegung die Botschaft ist: kinetische Typografie, Statistik- oder Zahlen-Count-up, Chart-/Datenvisualisierungs-Effekt, Logo-Sting, Brand-Lockup, Lower-Third, Callout, Social-Overlay, animierte Schlagzeile/Tweet/News-Element, Motion-Poster oder kurze hervorgehobene Seitenaufnahme. Meist unter 10 s und bis zu ~30 s, ohne Erzählbogen, Voice-Over oder Live-Action-Subjekt. Kann als MP4 oder transparentes Overlay ausgegeben werden. Nicht für längere, mehrszenige, erzählte oder Brand-Reel-Stücke...
creativevideodesign