Deck

Title slide

The deck cover, drawn by the VI canvas: the side-by-side lockup by default, the full-bleed art cover when imagery is supplied. Client, date and the classification caveat ride the canvas's own footer row.

Install

npx shadcn@latest add @alix/titleSlide

Preview

Ninety days to margin

The plan, the proof, and the ask.

Northwind IndustriesJuly 2026Draft for discussion

Usage

import { TitleSlide } from "@/components/deck/titleSlide";

<TitleSlide
  title="Ninety days to margin"
  subtitle="The plan, the proof, and the ask."
  client="Northwind Industries"
  date="July 2026"
  classification="Draft for discussion"
/>

Examples

01

With cover imagery

Pass resolved media and the cover switches to the full-bleed art template. The mark corners the frame and every ink flips to the image's tone.

AE Group efficiency programme

Response document

AE GroupJuly 2026
<TitleSlide
  title="AE Group efficiency programme"
  subtitle="Response document"
  client="AE Group"
  date="July 2026"
  media={{ src: "/vi/gradient-art.webp", tone: "dark" }}
/>
02

Cover-only, no subtitle

The subtitle is optional; omit it and the title carries the lockup alone, with just the engagement meta on the footer.

Project Jupiter

Northwind IndustriesJuly 2026Confidential
<TitleSlide
  title="Project Jupiter"
  client="Northwind Industries"
  date="July 2026"
  classification="Confidential"
/>

When to use it

Use it for

  • The single opening slide of a deck: exactly one, always first.
  • Engagement chrome (client, date, and the classification caveat), which routes to the footer meta row, never the title.
  • A cover with resolved imagery: pass media and the art template takes over; leave it off for the type-only lockup.

Reach for something else

  • Chapter turns inside the deck. Use SectionBreakSlide.
  • Passing a raw image element or an unresolved image id: media is a resolved { src, tone } object the app produces from a governed image.
  • Placing the wordmark or title yourself: the geometry belongs to the VI templates.

Props

PropTypeDefaultDescription
titlestringThe cover title. A plain string from the deck JSON; the slide owns the type.
subtitlestringOptional support line under the title.
clientstringEngagement chrome. client, date and classification are collected in order onto the canvas footer meta row, not the title block.
classificationstringThe consulting-grade caveat line, e.g. "Draft for discussion".
surfaceVISurfaceCover surface when no image is set: the brand vocabulary (white, primary, sand, greyGradient, goldGradient). Ignored once media is supplied.
mediaVIMediaResolved cover imagery: a { src, tone } object (the app resolves a governed imageId to this). Its presence switches the lockup template to the art cover.

See also