Component library

Showing 13 components in the broadside deck.

  • <BroadsideCover>

    broadsideTitlePresentation

    Protest-poster cover: massive lowercase display title with catalogue number and meta.

    When to use: Opening slide for manifesto / editorial decks. Pair with dark or brand presentationTheme.background.

    Preview

    01Broadside

    this is the broadside style

    Type so large it becomes image.

    Lunnoa2026 · Showcase
    PropTypeNotes
    numberstringOptional. Default: "01". Catalogue number top-left.
    labelstringOptional. Default: "Broadside". Top-right label.
    titlestringRequired. Lowercase display title.
    leadstringOptional. Supporting sentence.
    authorstringOptional. Bottom-left meta.
    metastringOptional. Bottom-right meta.

    Examples

    <BroadsideCover number="01" title="this is the broadside style" lead="Type so large it becomes image." author="Lunnoa" meta="2026 · Showcase" />
  • <BroadsideChapter>

    broadsideChapterPresentation

    Chapter opener with oversized lowercase title.

    When to use: Section divider in an editorial deck.

    Preview

    02 / Chapter

    the next chapter begins here

    What this section covers.

    PropTypeNotes
    numberstringOptional. e.g. "02 / Chapter".
    titlestringRequired. Chapter title (lowercase).
    leadstringOptional. Optional framing sentence.

    Examples

    <BroadsideChapter number="02 / Chapter" title="the next chapter begins here" lead="What this section covers." />
  • <BroadsideStatement>

    broadsideStatementPresentation

    Single bold claim with mono kicker and accent rule.

    When to use: Thesis / punchline slide.

    Preview

    The Argument03

    Core Thesis

    orange is not an accent. it is the room.

    Broadside
    PropTypeNotes
    chromeLeftstringOptional. Top chrome left.
    chromeRightstringOptional. Top chrome right.
    kickerstringOptional. Mono eyebrow.
    titlestringRequired. Accent-coloured claim.
    footLeftstringOptional. Footer left.
    footRightstringOptional. Footer right.

    Examples

    <BroadsideStatement chromeLeft="The Argument" chromeRight="03" kicker="Core Thesis" title="orange is not an accent. it is the room." footLeft="Broadside" />
  • <BroadsideSplit>

    broadsideSplitMediaPresentation

    Text + image split. Use upload_media (MCP) or an https URL for imageSrc.

    When to use: When a slide needs a photograph or diagram beside copy.

    Preview

    Evidence04

    when content needs image support

    Upload via MCP upload_media, then pass the returned url.

    Evidence wall

    Source · 2026

    PropTypeNotes
    chromeLeftstringOptional. Top chrome left.
    chromeRightstringOptional. Top chrome right.
    kickerstringOptional. Mono eyebrow.
    titlestringRequired. Headline.
    bodystringOptional. Supporting copy.
    imageSrcstringOptional. Image URL from upload_media or https.
    imageAltstringOptional. Alt text.
    imageCaptionstringOptional. Caption under the image.
    footLeftstringOptional. Footer left.
    footRightstringOptional. Footer right.

    Examples

    <BroadsideSplit chromeLeft="Evidence" chromeRight="04" title="when content needs image support" body="Upload via MCP upload_media, then pass the returned url." imageSrc="/uploads/media/example.png" imageAlt="Evidence wall" imageCaption="Source · 2026" />
  • <BroadsideStats>

    broadsideStatsPresentation

    Three top-bordered stat cards with accent numerals.

    When to use: KPI strip in editorial voice.

    Preview

    Numbers05

    87%

    Retention

    YoY

    12

    Markets

    4.2×

    Pipeline

    PropTypeNotes
    chromeLeftstringOptional. Top chrome left.
    chromeRightstringOptional. Top chrome right.
    titlestringOptional. Optional headline.
    statsarrayRequired. [{ value, label, note? }].
    footLeftstringOptional. Footer left.
    footRightstringOptional. Footer right.

    Examples

    <BroadsideStats chromeLeft="Numbers" chromeRight="05" stats={[{ value: "87%", label: "Retention", note: "YoY" }, { value: "12", label: "Markets" }, { value: "4.2×", label: "Pipeline" }]} />
  • <BroadsideFadeList>

    broadsideListStatementPresentation

    Stacked display words at fading opacities (max 3).

    When to use: Before / during / after or staged narrative.

    Preview

    06

    • before
    • during
    • after
    PropTypeNotes
    numberstringOptional. Catalogue number.
    titlestringOptional. Optional side title.
    itemsstring[]Required. Up to three words/phrases.

    Examples

    <BroadsideFadeList number="06" items={["before", "during", "after"]} />
  • <BroadsideList>

    broadsideListPresentation

    Slash-marked bullet list capped at three items.

    When to use: Short takeaways in Broadside voice.

    Preview

    Rules07

    three rules only

    • Type is the image
    • One accent colour
    • No shadows
    PropTypeNotes
    chromeLeftstringOptional. Top chrome left.
    chromeRightstringOptional. Top chrome right.
    titlestringOptional. Headline.
    itemsstring[]Required. Up to three bullets.
    footLeftstringOptional. Footer left.
    footRightstringOptional. Footer right.

    Examples

    <BroadsideList chromeLeft="Rules" chromeRight="07" title="three rules only" items={["Type is the image", "One accent colour", "No shadows"]} />
  • <BroadsideQuote>

    broadsideQuotePresentation

    Oversized pull-quote with accent quotation mark.

    When to use: Interview or manifesto quote.

    Preview

    the room is the message.

    Design lead · 2026

    PropTypeNotes
    quotestringRequired. Quote body (lowercase preferred).
    attributionstringOptional. Mono attribution.

    Examples

    <BroadsideQuote quote="the room is the message." attribution="Design lead · 2026" />
  • <BroadsideCompare>

    broadsideComparePresentation

    Before/after compare; right panel uses accent wash.

    When to use: Today vs proposed.

    Preview

    Compare09

    Today

    five inboxes

    • /Manual forwards
    • /No audit trail

    After

    one intake

    • /Agent triage
    • /Full log
    PropTypeNotes
    chromeLeftstringOptional. Top chrome left.
    chromeRightstringOptional. Top chrome right.
    leftobjectRequired. { kicker?, title, body?, items? }.
    rightobjectRequired. { kicker?, title, body?, items? }.
    footLeftstringOptional. Footer left.
    footRightstringOptional. Footer right.

    Examples

    <BroadsideCompare chromeLeft="Compare" chromeRight="09" left={{ kicker: "Today", title: "five inboxes", items: ["Manual forwards", "No audit trail"] }} right={{ kicker: "After", title: "one intake", items: ["Agent triage", "Full log"] }} />
  • <BroadsideChart>

    broadsideChartPresentation

    Vertical bar chart with optional accent bar.

    When to use: Simple comparative bars.

    Preview

    share of voice

    Us
    A
    B
    PropTypeNotes
    chromeLeftstringOptional. Top chrome left.
    chromeRightstringOptional. Top chrome right.
    titlestringOptional. Headline.
    itemsarrayRequired. [{ label, value 0–100, accent? }].
    footLeftstringOptional. Footer left.
    footRightstringOptional. Footer right.

    Examples

    <BroadsideChart title="share of voice" items={[{ label: "Us", value: 72, accent: true }, { label: "A", value: 48 }, { label: "B", value: 35 }]} />
  • <BroadsideFlow>

    broadsideTimelinePresentation

    Horizontal numbered process steps.

    When to use: Method / how-it-works.

    Preview

    how it works

    01

    Discover

    Talk to users.

    02

    Define

    One hypothesis.

    PropTypeNotes
    chromeLeftstringOptional. Top chrome left.
    chromeRightstringOptional. Top chrome right.
    titlestringOptional. Headline.
    stepsarrayRequired. [{ number, title, description? }].
    footLeftstringOptional. Footer left.
    footRightstringOptional. Footer right.

    Examples

    <BroadsideFlow title="how it works" steps={[{ number: "01", title: "Discover", description: "Talk to users." }, { number: "02", title: "Define", description: "One hypothesis." }]} />
  • <BroadsideEnd>

    broadsideOutroPresentation

    Closing display title with optional author meta.

    When to use: Final slide.

    Preview

    20

    thank you

    Questions welcome.

    Lunnoa2026
    PropTypeNotes
    numberstringOptional. Catalogue number.
    titlestringRequired. Closing title.
    leadstringOptional. Supporting line.
    authorstringOptional. Bottom-left.
    metastringOptional. Bottom-right.

    Examples

    <BroadsideEnd number="20" title="thank you" lead="Questions welcome." author="Lunnoa" meta="2026" />
  • <BroadsideFrame>

    broadsideChromePresentation

    Chrome + foot wrapper around arbitrary children.

    When to use: When composing custom Broadside content with shared hairline chrome.

    Preview

    Notes11

    Custom body

    PropTypeNotes
    chromeLeftstringOptional. Top chrome left.
    chromeRightstringOptional. Top chrome right.
    footLeftstringOptional. Footer left.
    footRightstringOptional. Footer right.
    childrenReactNodeRequired. Slide body.

    Examples

    <BroadsideFrame chromeLeft="Notes" chromeRight="11"><p>Custom body</p></BroadsideFrame>