Release Notes Video

Terminal-style green changelog that iterates a release items array (tag/title/desc); swap product, version, install command, and CTA.

Type
Video
Format
Instagram Reel · 9:16
Orientation
Portrait
Duration
16.8s
Scenes
5
Render cost
$0.0042 / render
VariablesData-driven repeatConditional scenes
Open in editor

Free template · opens in the editor, no account required.

Customize Release Notes Video

Release Notes Video is a ready-to-render SaaS / dev tools video design formatted for Instagram Reel · 9:16 with 5 scenes and support for variables, data-driven repeat, conditional scenes. Open it in the editor to replace its copy and media, then render variations through the Zvid API.

10 variables: Every value below is a variable you can override — send them in the variables field of the render request (or edit them in the editor) to generate on-brand versions at scale.

productNameText
FORGE CLI
versionText
v3.4.0
releaseTitleText
What shipped this release.
showVersionToggle
on
outroLineText
Update in one command.
installCmdText
npm i -g forge@latest
handleText
forge.dev/changelog
accentColor
#3DF08C
itemsList · 3
tagADDED
titleParallel task runner
descPipelines now execute up to 8 jobs at once — builds are ~3x faster.
tagIMPROVED
titleSmarter caching layer
descUnchanged steps are skipped automatically. No more cold rebuilds.
tagFIXED
titleWindows path handling
descResolved backslash edge cases that broke globs on Windows shells.
musicUrlMedia URL

The exact JSON payload

This is the full render config — POST it to the API, or open it in the editor to tweak.

Open in editor ↗
{
  "name": "saas-release-notes",
  "resolution": "instagram-reel",
  "frameRate": 30,
  "backgroundColor": "#08120C",
  "outputFormat": "mp4",
  "variables": {
    "productName": "FORGE CLI",
    "version": "v3.4.0",
    "releaseTitle": "What shipped this release.",
    "showVersion": true,
    "outroLine": "Update in one command.",
    "installCmd": "npm i -g forge@latest",
    "handle": "forge.dev/changelog",
    "accent": "#3DF08C",
    "items": [
      {
        "tag": "ADDED",
        "title": "Parallel task runner",
        "desc": "Pipelines now execute up to 8 jobs at once — builds are ~3x faster."
      },
      {
        "tag": "IMPROVED",
        "title": "Smarter caching layer",
        "desc": "Unchanged steps are skipped automatically. No more cold rebuilds."
      },
      {
        "tag": "FIXED",
        "title": "Windows path handling",
        "desc": "Resolved backslash edge cases that broke globs on Windows shells."
      }
    ],
    "musicUrl": "https://cdn.pixabay.com/audio/2025/03/19/audio_56ae1dae5f.mp3"
  },
  "scenes": [
    {
      "id": "intro",
      "duration": 3.6,
      "backgroundColor": "#08120C",
      "transition": "smoothleft",
      "transitionId": "note",
      "transitionDuration": 0.5,
      "visuals": [
        {
          "type": "SVG",
          "width": 1080,
          "height": 1920,
          "track": 0,
          "enterBegin": 0,
          "exitEnd": 3.6,
          "svg": "<svg width='1080' height='1920' viewBox='0 0 1080 1920' xmlns='http://www.w3.org/2000/svg'><defs><radialGradient id='rnBg' cx='0.5' cy='0.34' r='0.95'><stop offset='0' stop-color='#0F2118'/><stop offset='1' stop-color='#08120C'/></radialGradient></defs><rect width='1080' height='1920' fill='url(#rnBg)'/><rect x='90' y='640' width='900' height='640' rx='30' fill='#0B1A12' stroke='rgba(61,240,140,0.35)' stroke-width='1.5'/><circle cx='150' cy='700' r='11' fill='#FF5F56'/><circle cx='190' cy='700' r='11' fill='#FFBD2E'/><circle cx='230' cy='700' r='11' fill='#27C93F'/><path d='M150 780 H930' stroke='rgba(61,240,140,0.18)' stroke-width='1.5'/></svg>"
        },
        {
          "type": "TEXT",
          "x": 540,
          "y": 300,
          "anchor": "top-center",
          "track": 1,
          "enterBegin": 0.2,
          "enterEnd": 0.65,
          "enterAnimation": "fade",
          "exitEnd": 3.6,
          "style": {
            "fontFamily": "Space Grotesk"
          },
          "html": "<div style='display:inline-block; border:1.5px solid rgba(61,240,140,0.6); border-radius:8px; padding:12px 26px; color:{{accent}}; font-size:24px; font-weight:700; letter-spacing:6px;'>{{productName}}</div>"
        },
        {
          "type": "TEXT",
          "x": 150,
          "y": 840,
          "width": 800,
          "anchor": "top-left",
          "track": 2,
          "enterBegin": 0.5,
          "enterEnd": 0.95,
          "enterAnimation": "smoothup",
          "exitEnd": 3.6,
          "style": {
            "fontFamily": "Space Grotesk"
          },
          "html": "<div style='color:#5F7A6A; font-size:30px; font-weight:600; font-family:Inter, monospace;'>~ forge release {{version}}</div><div style='margin-top:24px; color:#FFFFFF; font-size:74px; line-height:1.06; font-weight:700; letter-spacing:-2px;'>{{releaseTitle}}</div>"
        }
      ]
    },
    {
      "id": "note",
      "iterate": "items",
      "iterateAs": "it",
      "duration": 3.6,
      "backgroundColor": "#08120C",
      "transition": "smoothleft",
      "transitionId": "outro",
      "transitionDuration": 0.5,
      "visuals": [
        {
          "type": "SVG",
          "width": 1080,
          "height": 1920,
          "track": 0,
          "enterBegin": 0,
          "exitEnd": 3.6,
          "svg": "<svg width='1080' height='1920' viewBox='0 0 1080 1920' xmlns='http://www.w3.org/2000/svg'><rect width='1080' height='1920' fill='#08120C'/><rect x='72' y='560' width='936' height='800' rx='30' fill='#0B1A12' stroke='rgba(61,240,140,0.28)' stroke-width='1.5'/><path d='M72 660 H1008' stroke='rgba(61,240,140,0.16)' stroke-width='1.5'/><circle cx='128' cy='612' r='9' fill='#FF5F56'/><circle cx='160' cy='612' r='9' fill='#FFBD2E'/><circle cx='192' cy='612' r='9' fill='#27C93F'/><path d='M140 1240 L180 1280 L260 1180' fill='none' stroke='#3DF08C' stroke-width='7' stroke-linecap='round' stroke-linejoin='round' opacity='0.7'/></svg>"
        },
        {
          "type": "TEXT",
          "x": 128,
          "y": 720,
          "anchor": "top-left",
          "track": 3,
          "enterBegin": 0.2,
          "enterEnd": 0.6,
          "enterAnimation": "smoothleft",
          "exitEnd": 3.6,
          "style": {
            "fontFamily": "Inter"
          },
          "html": "<div style='display:inline-block; background:rgba(61,240,140,0.14); border:1.5px solid rgba(61,240,140,0.5); color:{{accent}}; border-radius:8px; padding:10px 24px; font-size:26px; font-weight:800; letter-spacing:3px;'>{{it.tag}}</div>"
        },
        {
          "type": "TEXT",
          "x": 128,
          "y": 850,
          "width": 820,
          "anchor": "top-left",
          "track": 2,
          "enterBegin": 0.4,
          "enterEnd": 0.85,
          "enterAnimation": "smoothup",
          "exitEnd": 3.6,
          "style": {
            "fontFamily": "Space Grotesk"
          },
          "html": "<div style='color:#FFFFFF; font-size:78px; line-height:1.02; font-weight:700; letter-spacing:-1px;'>{{it.title}}</div><div style='margin-top:28px; color:#8FA89A; font-size:34px; line-height:1.5; font-weight:500; font-family:Inter, sans-serif;'>{{it.desc}}</div>"
        },
        {
          "type": "TEXT",
          "condition": "{{showVersion}}",
          "x": 950,
          "y": 96,
          "anchor": "center-right",
          "track": 1,
          "enterBegin": 0,
          "exitEnd": 3.6,
          "style": {
            "fontFamily": "Inter"
          },
          "html": "<div style='color:rgba(143,168,154,0.8); font-size:24px; font-weight:700; letter-spacing:2px;'>{{productName}} · {{version}}</div>"
        }
      ]
    },
    {
      "id": "outro",
      "duration": 4.4,
      "backgroundColor": "#08120C",
      "visuals": [
        {
          "type": "SVG",
          "width": 1080,
          "height": 1920,
          "track": 0,
          "enterBegin": 0,
          "exitEnd": 4.4,
          "svg": "<svg width='1080' height='1920' viewBox='0 0 1080 1920' xmlns='http://www.w3.org/2000/svg'><defs><radialGradient id='rnEnd' cx='0.5' cy='0.42' r='0.9'><stop offset='0' stop-color='#102319'/><stop offset='1' stop-color='#08120C'/></radialGradient></defs><rect width='1080' height='1920' fill='url(#rnEnd)'/><rect x='120' y='940' width='840' height='150' rx='20' fill='#0B1A12' stroke='rgba(61,240,140,0.4)' stroke-width='1.5'/><path d='M320 620 L400 700 L560 540' fill='none' stroke='#3DF08C' stroke-width='12' stroke-linecap='round' stroke-linejoin='round'/><circle cx='440' cy='620' r='150' fill='none' stroke='rgba(61,240,140,0.3)' stroke-width='2'/></svg>"
        },
        {
          "type": "TEXT",
          "x": 540,
          "y": 810,
          "width": 900,
          "anchor": "top-center",
          "track": 1,
          "enterBegin": 0.3,
          "enterEnd": 0.75,
          "enterAnimation": "smoothup",
          "exitEnd": 4.4,
          "style": {
            "fontFamily": "Space Grotesk"
          },
          "html": "<div style='text-align:center; color:#FFFFFF; font-size:62px; line-height:1.1; font-weight:700; letter-spacing:-1px;'>{{outroLine}}</div>"
        },
        {
          "type": "TEXT",
          "x": 540,
          "y": 965,
          "anchor": "top-center",
          "track": 2,
          "enterBegin": 0.7,
          "enterEnd": 1.1,
          "enterAnimation": "fade",
          "exitEnd": 4.4,
          "style": {
            "fontFamily": "Inter"
          },
          "html": "<div style='text-align:center; color:{{accent}}; font-size:36px; font-weight:600; font-family:Inter, monospace;'>$ {{installCmd}}</div>"
        },
        {
          "type": "TEXT",
          "x": 540,
          "y": 1200,
          "anchor": "top-center",
          "track": 3,
          "enterBegin": 1,
          "enterEnd": 1.4,
          "enterAnimation": "fade",
          "exitEnd": 4.4,
          "style": {
            "fontFamily": "Inter"
          },
          "html": "<div style='text-align:center; color:#5F7A6A; font-size:26px; font-weight:600; letter-spacing:2px;'>{{handle}}</div>"
        }
      ]
    }
  ],
  "audios": [
    {
      "src": "{{musicUrl}}",
      "volume": 0.16,
      "track": 0
    }
  ]
}

More SaaS / dev tools templates

View all ↗

Ready to ship video at scale?

Start free — your first render is only a JSON payload away.