Social Media Video Template

The Grand Atlantic - Cruise Dining Card

The cruise cut of Daily Special Card, and the first sibling that carries a whole menu rather than one item: a 24-second vertical (9:16) card for a ship's main dining room, publishing three dishes of the day, two bar specials, seatings, deck and dress code. A ship already publishes this as its daily programme, so the feed exists - one hull runs 7 menus a voyage and roughly 45 voyages a year, about 315 cards from a single dining room before a fleet multiplies it by every hull. Seven scenes on an alternating sea-ink and cream rhythm: an opener that establishes vessel, deck and voyage day over the aft deck and wake, the full three-dish list with name, description and price set as a printed menu, the signature dish as a photo band cut by a brass rule with its type on a clean plate below, a matted second dish above a third set as a footer line, both bar specials as a two-up window grid, seatings at display scale over the dining room, and a typographic close that ends on the ship's name rather than on food. The register is the ship's own stationery - engraved and centred, Bodoni Moda with Archivo labels, every ground carrying a fine 45-degree engine-turned guilloche crosshatch at 4.5% ink on cream and 6% brass on sea-ink, and a brass frame inset 52px that doubles on the opener and closer to separate bookends from the body. Photo treatment is the part that makes it work at sea: only four of the six image slots are daily (dish_photo_1, dish_photo_2, drink_photo_1, drink_photo_2 - what the galley and bar actually shoot each night), while ship_photo and venue_photo are evergreen stills the vessel shoots once, so every card is anchored to the water without anyone photographing the ocean nightly. The hero uses a photo band over an ink plate rather than a full-bleed scrim, because contrast never depends on a veil - that is the treatment for a bright subject like a white plate, and it lets the crop be chosen for the food instead of compromised to leave room for a headline. Thirty dynamic fields: ship_name, venue_name, deck_label, voyage_line, date_label; dish_1/2/3 name, desc and price; drink_1/2 name, desc and price; dish_1_price_line, seating_times, dress_code, closing_line; and the six photos. Ten of those drive more than one scene, so a single replacement updates the card coherently. The fare model is a template-level decision expressed through the price fields rather than a switch: pass "Included" on every price for an all-inclusive line, or empty strings to hide money entirely for a fare-inclusive luxury brand. Length ceilings are set by Bodoni at display scale: venue_name is built for two lines and takes about 9 characters each at 148-158px, dish names about 21 characters before the list rows wrap to a second line (scenes 02 and 04 are built for that wrap), drink names about 13 at 64px in the two-up grid. Smallest type in the deck is 27px and all bottom-anchored content clears 196px, keeping it above the Stories reply bar and the Reels action rail.

Aspect ratio
9:16 · Vertical
Duration
~24s
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 30 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.

  • Ship Photo

    url
    ship_photo

    https://images.unsplash.com/photo-1688269910724-97e4f876a3b3?fm=jpg&q=80&w=1400&auto=format&fit=crop

  • Ship Name

    text
    ship_name

    MS Meridian

    ~63 characters max · 1 line

  • Deck Label

    text
    deck_label

    Deck 4 · Midship

    ~68 characters max · 1 line

  • Venue Name

    text
    venue_name

    The Grand Atlantic

    ~26 characters max · 2 lines

  • Voyage Line

    text
    voyage_line

    Day 4 · At Sea

    ~58 characters max · 1 line

  • Date Label

    text
    date_label

    Wednesday 5 August

    ~70 characters max · 1 line

  • Dish 1 Name

    text
    dish_1_name

    Seared Sea Scallops

    ~26 characters max · 1 line

  • Dish 1 Price

    text
    dish_1_price

    +$18

    ~16 characters max · 1 line

  • Dish 1 Desc

    text
    dish_1_desc

    Saffron butter, charred leek, lemon

    ~49 characters max · 1 line

  • Dish 2 Name

    text
    dish_2_name

    Miso-Glazed Black Cod

    ~49 characters max · 2 lines

  • Dish 2 Price

    text
    dish_2_price

    Included

    ~19 characters max · 1 line

  • Dish 2 Desc

    text
    dish_2_desc

    Charred bok choy, ginger dashi

    ~49 characters max · 1 line

  • Dish 3 Name

    text
    dish_3_name

    Osso Buco alla Milanese

    ~49 characters max · 2 lines

  • Dish 3 Price

    text
    dish_3_price

    Included

    ~19 characters max · 1 line

  • Dish 3 Desc

    text
    dish_3_desc

    Veal shank, gremolata, saffron risotto

    ~49 characters max · 1 line

  • Dish Photo 1

    url
    dish_photo_1

    https://images.unsplash.com/photo-1669109230976-743c9ac94d27?fm=jpg&q=80&w=1600&auto=format&fit=crop

  • Dish 1 Price Line

    text
    dish_1_price_line

    Surcharge +$18

    ~59 characters max · 1 line

  • Dish Photo 2

    url
    dish_photo_2

    https://images.unsplash.com/photo-1726452842860-e7e8066f3341?fm=jpg&q=80&w=1400&auto=format&fit=crop

  • Drink Photo 1

    url
    drink_photo_1

    https://images.unsplash.com/photo-1762880343802-7f32c3123f08?fm=jpg&q=80&w=1000&auto=format&fit=crop

  • Drink 1 Name

    text
    drink_1_name

    Meridian Sour

    ~15 characters max · 1 line

  • Drink 1 Desc

    text
    drink_1_desc

    Rye, blood orange, egg white, angostura

    ~58 characters max · 2 lines

  • Drink 1 Price

    text
    drink_1_price

    $14

    ~26 characters max · 1 line

  • Drink Photo 2

    url
    drink_photo_2

    https://images.unsplash.com/photo-1750665645097-765c958d2332?fm=jpg&q=80&w=1000&auto=format&fit=crop

  • Drink 2 Name

    text
    drink_2_name

    Deck 4 Spritz

    ~15 characters max · 1 line

  • Drink 2 Desc

    text
    drink_2_desc

    Aperol, prosecco, grapefruit oil

    ~58 characters max · 2 lines

  • Drink 2 Price

    text
    drink_2_price

    $12

    ~26 characters max · 1 line

  • Venue Photo

    url
    venue_photo

    https://images.unsplash.com/photo-1752610877644-c83e616d9fd3?fm=jpg&q=80&w=1400&auto=format&fit=crop

  • Seating Times

    text
    seating_times

    6:00 8:30

    ~20 characters max · 2 lines

  • Dress Code

    text
    dress_code

    Formal night · jackets suggested

    ~34 characters max · 1 line

  • Closing Line

    text
    closing_line

    Deck 4 · Midship · 6:00 & 8:30

    ~69 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": "restaurant-grand-atlantic",
  "replacements": {
    "ship_photo": "https://images.unsplash.com/photo-1688269910724-97e4f876a3b3?fm=jpg&q=80&w=1400&auto=format&fit=crop",
    "ship_name": "MS Meridian",
    "deck_label": "Deck 4 · Midship",
    "venue_name": "The Grand\nAtlantic",
    "voyage_line": "Day 4 · At Sea",
    "date_label": "Wednesday 5 August"
  }
}'

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": "restaurant-grand-atlantic",
  "replacements": {
    "ship_photo": "https://images.unsplash.com/photo-1688269910724-97e4f876a3b3?fm=jpg&q=80&w=1400&auto=format&fit=crop",
    "ship_name": "MS Meridian",
    "deck_label": "Deck 4 · Midship",
    "venue_name": "The Grand\nAtlantic",
    "voyage_line": "Day 4 · At Sea",
    "date_label": "Wednesday 5 August"
  }
}'

The body above shows 6 of 30 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/restaurant-grand-atlantic/variables. See the previewing guide, the rendering guide, or the OpenAPI spec.

Frequently asked questions

How do I customize the The Grand Atlantic - Cruise Dining Card template?

Open the template in the Renderly editor and replace its 30 customizable fields (such as Ship Photo) 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, 30 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

Job Ad - Field & Facilities Roles template preview

Job Ad - Field & Facilities Roles

A narrated, confident-corporate 61-second 4:5 recruitment video for operational, technical and field roles - one render per open vacancy, built to fire straight from the ATS row and post to LinkedIn, Meta or Indeed. Seven scenes on a strict ink / warm-paper / signal-amber rhythm (photo, paper, ink, full amber, paper, ink, paper): a NOW HIRING hook over an on-the-job photo, the three facts a candidate decides on (location, contract, salary), three duties as numbered rows, three honest requirements on a full-amber ground, three white benefit cards, an Apply scene with a QR code and short URL, and a contact endcard. Geist headlines with JetBrains Mono kickers and a persistent NN/07 scene counter. Ships with an AI voiceover - one Speechify clip per scene, paced so each list item lands as the narrator reads it - over an ambient corporate bed, and the lower 170px of every frame is kept clear as a caption safe zone. Swap the 22 per-vacancy fields - company_logo, job_title, location, employment_type, salary_range, four photos, duty_1/2/3, req_1/2/3, benefit_1/2/3, apply_url, apply_qr, contact_email and contact_phone - plus voiceover_1-7 to re-narrate per role. Salary is passed preformatted; duties, requirements and benefits are written to fit two lines at their set size, so keep each under ~60 characters.

Shift - Cinematic Job Poster template preview

Shift - Cinematic Job Poster

A 4:5 recruitment ad built as a persistent information HUD over full-bleed graded footage, for the Meta and Instagram feed. The role, the salary and the Apply button never leave the frame, so a scrolling candidate can stop on any frame and read the whole job - but the picture is always moving underneath, and the proof points rotate through a single slot against a three-segment progress rail instead of sitting as a dead bullet list. Signal orange on ink, JetBrains Mono job title, Space Grotesk everywhere else. Five nine-second scenes with an AI voiceover, one line per scene. Swap per role: job_title, location_line, pay_range, pay_note, company_line, perk_1/2/3, cta_label, company_logo, five footage clips and five voiceover lines. Salary on screen from frame one is the point - it is the biggest response lever in trades recruitment and the thing most job ads leave out. Supply footage with the subject in the upper 55% of frame; the bottom sits under the scrim.

Product Hunt Launch - Dev Tool / CLI template preview

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.

Ready to make your The Grand Atlantic - Cruise Dining Card video?

Customize it in the editor and render in minutes - no design or editing skills required.