Product Hunt Launch - Dev Tool / CLI
A 27-second 16:9 launch video for products whose demo is a command, not a dashboard - CLIs, APIs, SDKs and developer tools, where a generic screenshot template flatters none of them. Terminal-dark throughout, monospace-led, with the install line as the hero object: it types on character by character behind a blinking caret, and the pill grows to fit whatever command you give it, so a long `npm install -g` never clips. Five scenes on an alternating near-black and paper ground, cut by hard-edge wipes rather than dissolves: the prompt opens with your mark, wordmark, tagline and install command; the command runs and prints its output one line at a time onto a terminal that tilts into the frame and settles flat; a config panel proves how little there is to adopt; a p99 latency card and a live log stream prove it is production-serious; and the close pairs the Product Hunt pill with the command again and an upvote CTA. Every panel is built from primitives rather than uploaded screenshots, so the defaults look finished before you change anything, and the depth is real - each window arrives at an angle and rotates flat over its entry, with a slow sway holding it alive afterwards. Eighteen dynamic fields cover the whole video and all of them are short single-line strings plus one logo image: product_name and install_cmd (each used twice, in the opening and the close), version_line, tagline, the three feature headlines, the five terminal lines (run_cmd, step_1, step_2, success_line, deploy_url), config_filename, metric_label and metric_value, launch_line and cta_line. launch_line is the Product Hunt switch and the only Product-Hunt-specific element in the template: empty it and the orange pill disappears, leaving a generic launch video that works on X, LinkedIn, a landing page or a mailer. A restrained sound design rides under the music - keystrokes under the two typewriters, a whoosh on each scene wipe, and a software tone on the "live in 11.4s" beat. Two notes for integrators: install_cmd renders at a fixed 38px and the pill shrink-wraps around it, so length is free but a very long command makes a wide pill; and the six config lines and six log rows are static sample chrome, since per-token syntax colour cannot survive a single-string replacement.
- Aspect ratio
- 16:9 · Horizontal
- Duration
- ~27s
- Category
- Social Media
Try it with your own copy
Edit a field and the frame re-renders in your browser. No account, no credits - previews are free because they cost a browser paint, not a render.
What you can customize
This template exposes 18 dynamic fields you can swap per video - edit them in the editor or pass them to the API to batch-render variations at scale. The monospace name is the exact key to send in replacements.
Logo
urllogodata:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI3NCIgaGVpZ2h0PSI3NCIgdmlld0JveD0iMCAwIDc0IDc0Ij48cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iNzQiIGhlaWdodD0iNzQiIHJ4PSIxOCIgZmlsbD0iI0I2RkYzQyIvPjxwYXRoIGQ9Ik0zMS41IDIzLjVMNDQgMzdMMzEuNSA1MC41IiBmaWxsPSJub25lIiBzdHJva2U9IiMwQjBEMEMiIHN0cm9rZS13aWR0aD0iNi41IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz48L3N2Zz4=
Version Line
textversion_lineRELAYD · V1.0
~59 characters max · 1 line
Product Name
textproduct_namerelayd
~19 characters max · 1 line
Tagline
texttaglineOne command to ship your API to the edge.
~52 characters max · 1 line
Install Cmd
textinstall_cmdnpm i -g relayd
~144 characters max · 2 lines
Feature 1
textfeature_1Deploy in eleven seconds.
~63 characters max · 2 lines
Run Cmd
textrun_cmdrelayd deploy
~108 characters max · 1 line
Step 1
textstep_1→ building 14 routes
~108 characters max · 1 line
Step 2
textstep_2→ pushing to 31 regions
~108 characters max · 1 line
Success Line
textsuccess_line✓ live in 11.4s
~108 characters max · 1 line
Deploy Url
textdeploy_urlhttps://api.relayd.dev
~108 characters max · 1 line
Config Filename
textconfig_filenamerelayd.config.ts
~61 characters max · 1 line
Feature 2
textfeature_2Six lines of config. No YAML.
~40 characters max · 2 lines
Feature 3
textfeature_3Logs, traces and rollback built in.
~64 characters max · 2 lines
Metric Label
textmetric_labelP99 LATENCY
~49 characters max · 1 line
Metric Value
textmetric_value18ms
~8 characters max · 1 line
Launch Line
textlaunch_line● LIVE ON PRODUCT HUNT TODAY
~310 characters max · 2 lines
Cta Line
textcta_lineUpvote us - relayd.dev
~46 characters max · 1 line
Render it from the API
Copy either call below. Both already carry this template's ID and its real variable keys - swap the values for your own.
1. Preview it — free
Same body as a render. Costs no credits, creates no job. Returns a public URL that plays the video in a browser, plus a list of problems with your payload — a mistyped key is otherwise ignored in silence.
curl -X POST https://renderly.video/api/v1/previews \
-H "Authorization: Bearer $RENDERLY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"templateId": "producthunt-launch-devtool",
"replacements": {
"logo": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI3NCIgaGVpZ2h0PSI3NCIgdmlld0JveD0iMCAwIDc0IDc0Ij48cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iNzQiIGhlaWdodD0iNzQiIHJ4PSIxOCIgZmlsbD0iI0I2RkYzQyIvPjxwYXRoIGQ9Ik0zMS41IDIzLjVMNDQgMzdMMzEuNSA1MC41IiBmaWxsPSJub25lIiBzdHJva2U9IiMwQjBEMEMiIHN0cm9rZS13aWR0aD0iNi41IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz48L3N2Zz4=",
"version_line": "RELAYD · V1.0",
"product_name": "relayd",
"tagline": "One command to ship your API to the\nedge.",
"install_cmd": "npm i -g relayd",
"feature_1": "Deploy in eleven\nseconds."
}
}'2. Render it
Change one word in the URL. Keep templateId — it is what links your call to this template, so later improvements reach you automatically.
curl -X POST https://renderly.video/api/v1/renders \
-H "Authorization: Bearer $RENDERLY_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"templateId": "producthunt-launch-devtool",
"replacements": {
"logo": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI3NCIgaGVpZ2h0PSI3NCIgdmlld0JveD0iMCAwIDc0IDc0Ij48cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iNzQiIGhlaWdodD0iNzQiIHJ4PSIxOCIgZmlsbD0iI0I2RkYzQyIvPjxwYXRoIGQ9Ik0zMS41IDIzLjVMNDQgMzdMMzEuNSA1MC41IiBmaWxsPSJub25lIiBzdHJva2U9IiMwQjBEMEMiIHN0cm9rZS13aWR0aD0iNi41IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz48L3N2Zz4=",
"version_line": "RELAYD · V1.0",
"product_name": "relayd",
"tagline": "One command to ship your API to the\nedge.",
"install_cmd": "npm i -g relayd",
"feature_1": "Deploy in eleven\nseconds."
}
}'The body above shows 6 of 18 variables. Send any subset — every key you leave out renders its authored default. Read the full contract, with character limits, from GET /api/v1/templates/producthunt-launch-devtool/variables. See the previewing guide, the rendering guide, or the OpenAPI spec.
Frequently asked questions
How do I customize the Product Hunt Launch - Dev Tool / CLI template?
Open the template in the Renderly editor and replace its 18 customizable fields (such as Logo) with your own text, images, or video. Every change previews instantly before you render.
How much does it cost to render this template?
Rendering is credit-based - 1 credit equals 1 minute of 1080p video. You only pay when you export, and credits never expire on the pay-as-you-go plan.
Can I generate this video at scale via the API?
Yes. POST this template's ID and a replacements object to /api/v1/renders - one call per row of data, 18 fields swappable per video. Send the same body to /api/v1/previews first to check it for free. No-code integrations like Zapier work the same way.
More Social Media templates

Crypto Price Alert
A dark, fast vertical alert card for one crypto asset and one price move, fired when a threshold is crossed: the asset, the percentage move in crypto gold, the timeframe, the price now against where it started, and a call to action. 15 seconds, 9:16 (1080x1920). Dynamic fields: asset_symbol, asset_name, move_pct (sign included), timeframe, price_now, price_from, alert_time, source_name and cta_line. Reads the same for a 3% move or a 40% drop, up or down.

Reddit Story Reader
A screen-native story-reader short for faceless channels: a forum post card with the title and source, then three body pages in grey panels with a page counter and progress bar, and an end card that sets up the next part. 53 seconds, 9:16 (1080x1920). Dynamic fields: post_title, source_label, page_1, page_2, page_3 (up to about 380 characters each), part_label, outro_line and channel_handle. Longer stories render as several parts.

Motivational Quote Reel
The moving sibling of the Daily Quote card: one quote over slow, graded footage with an optional AI-narrated read. 23 seconds, 9:16 at 1080x1920, five scenes - a title card, the quote, the attribution, a near-black quote card built to be screenshotted, and a follow outro - in near-black, warm white and a single warm-amber accent, set in Cormorant Garamond with JetBrains Mono furniture. Dynamic fields: series_label, date_label, the_line, attribution, handle (text), background_clip (video) and narration (sound, filled per render with a text-to-speech value). It uses the same field names as the Daily Social Card - Quote, so one row a day renders both the square card and the vertical reel.