Specificatie

Slidetypes

De woordenschat waarin een deck geschreven is. Elk type declareert zijn eigen velden, en die declaratie is wat je hieronder ziet.

Een slidetype is een klein contract: een naam, een set velden en een vorm. Het is geen sjabloon dat je invult en daarna verschuift, en juist daarom kan hetzelfde deck op elk formaat renderen, op elk thema, naar HTML of PDF, en gelezen worden door iets dat geen mens is. Core levert er 35, allemaal gedeclareerd in één registry; de tekening op elke kaart hieronder is hetzelfde abstracte diagram dat de editor in zijn eigen slidekiezer tekent, uit dezelfde beschrijving van de layout.

De grid is gegroepeerd op de structure die elk type declareert: de vorm van zijn primaire inhoud, los van waar de slide over gaat en hoe hij eruitziet. Zes waarden dekken ze allemaal, zonder restcategorie, en dit is de as waar een tweede implementatie tegenaan bouwt - ondersteun je een structuur, dan ondersteun je elk type erin.

Een type declareert ook een runtime: wat de presenterende sessie ervoor moet doen, bovenop het serveren van de slide. Voor bijna de hele catalogus is dat niets - een static type rendert zonder server in beeld. De 4 live types zijn de uitzondering: de zaal antwoordt, en de sessie verzamelt en aggregeert die antwoorden als toestand die de presentator opent en sluit. Eén type, de countdown, is timed - zijn klok loopt in het presentatievenster en vraagt niets van de sessie.

Singleton 15 types

A fixed set of scalar slots.

Een vaste set losse velden. Lees de sleutels die het type declareert; er valt niets te herhalen.

  • Title slide title-slide Big title and subtitle to open with Velden en detail

    Velden

    Sleutel Type Verplicht Limiet Opties
    title string Ja 120
    subheading string Nee 160
    meta string Nee 160
    background enum Nee lime, mist
    logoCorner enum Nee left, right
    titleBlockAlign enum Nee left, center

    Layoutvarianten

    • Left
    • Centred

    Pak dit als

    • Opening/first slide of any deck

    Pak iets anders als

    • Anything other than the deck opening

    Itemvorm: Alleen losse velden Identiteit: eu.deckyard.slide.title Tier: 1 Runtime: static JSON Schema

  • Section title chapter-title-slide Section divider between topics Velden en detail

    Velden

    Sleutel Type Verplicht Limiet Opties
    titleBlockAlign enum Nee left, center
    title string Ja 140
    subheading string Nee 160
    layout enum Nee top, center, bottom

    Layoutvarianten

    • Left
    • Centred

    Pak dit als

    • Introducing a new major section or topic
    • Creating visual breaks between different parts of the presentation
    • Helping audience understand the structure

    Pak iets anders als

    • Content that needs explanation (use content slides after this)
    • Minor sub-topics within a section

    Itemvorm: Alleen losse velden Identiteit: eu.deckyard.slide.chapter-title Tier: 1 Runtime: static JSON Schema

  • Text slide content-slide A heading with body text Velden en detail

    Velden

    Sleutel Type Verplicht Limiet Opties
    title string Ja 120
    subheading string Nee 200
    layout enum Nee two-column, one-column
    density enum Nee auto, compact
    body markdown Ja 3000
    asideVariant enum Nee none, note, tip, warning
    asideText markdown Nee 300
    background enum Nee lime, mist
    actions items Nee Herhaalt, elk item met: label, url, style

    Layoutvarianten

    • One column
    • Text in two columns
    • Image 1/3
    • Image 1/2
    • Image 2/3
    • Row above
    • Row below
    • Beside text
    • Corner image

    Pak dit als

    • General explanatory text that does not fit other slide types
    • Mixed content (some bullets + some paragraphs)
    • Content that is truly freeform

    Pak iets anders als

    • Lists with title+description pairs (use list-slide)
    • Parallel items/categories with no causal relationship (use list-slide, or icon-card-grid-slide if each needs an icon)
    • Timelines or sequences (use timeline-slide)
    • Tables (use table-slide or chart-slide)
    • Genuine cause→effect / input→output flows between groups (use text-blocks-slide)

    Itemvorm: actions[] Identiteit: eu.deckyard.slide.content Tier: 1 Runtime: static JSON Schema

  • Callout callout-slide One insight, warning or definition on its own slide Velden en detail

    Velden

    Sleutel Type Verplicht Limiet Opties
    variant enum Ja insight, warning, definition, note, tip
    label string Nee 80
    body markdown Ja 600
    source string Nee 160
    background enum Nee lime, mist

    Pak dit als

    • A single key takeaway you want to land on its own slide
    • A warning or gotcha the audience must not miss
    • Defining one term before you use it (variant: definition)
    • A short aside or tip that would clutter a content slide

    Pak iets anders als

    • A full argument or several points (use content-slide or list-slide)
    • A pull quote with a named speaker (use quote-slide)
    • Two options weighed against each other (use comparison-slide)
    • A section divider between chapters (use chapter-title-slide)

    Itemvorm: Alleen losse velden Identiteit: eu.deckyard.slide.callout Tier: 2 Runtime: static Valt terug op: content-slide JSON Schema

  • Image + text image-text-slide An image beside text Velden en detail

    Velden

    Sleutel Type Verplicht Limiet Opties
    title string Ja 120
    body markdown Ja 3000
    image image Nee
    imageRole enum Nee content, decorative
    alt string Nee 180
    caption string Nee 160
    focusX number Nee
    focusY number Nee
    fit enum Nee cover, contain
    imageSide enum Nee left, right
    imageWidth enum Nee half, narrow, wide
    layout enum Nee split, corner
    imageBackground enum Nee white, match
    density enum Nee auto, compact
    asideVariant enum Nee none, note, tip, warning
    asideText markdown Nee 300
    background enum Nee lime, mist
    actions items Nee Herhaalt, elk item met: label, url, style

    Layoutvarianten

    • Text only
    • Image 1/3
    • Image 1/2
    • Image 2/3
    • Corner image
    • Beside text
    • Row above
    • Row below

    Pak dit als

    • Content where a photo/image adds value
    • Product or feature showcases
    • Person introductions with photo
    • Location or event context

    Pak iets anders als

    • Content without a meaningful image to pair
    • Heavy text content (use content-slide or split into multiple)
    • Long bodies on the "wide" or "corner" layouts (little text room)
    • Two or three images with one shared story (use image-set-slide)
    • Many images without text (use gallery-slide)

    Itemvorm: actions[] Identiteit: eu.deckyard.slide.image-text Tier: 1 Runtime: static JSON Schema

  • Video video-slide An embedded video Velden en detail

    Velden

    Sleutel Type Verplicht Limiet Opties
    title string Nee 100
    source string Ja 400
    background enum Nee lime, mist
    autoplay enum Nee off, on
    watchUrl string Nee 400
    bunnyLibraryId string Nee 20

    Pak dit als

    • Embedded video content

    Pak iets anders als

    • Content without a video URL

    Itemvorm: Alleen losse velden Identiteit: eu.deckyard.slide.video Tier: 2 Runtime: static Valt terug op: content-slide JSON Schema

  • Quote quote-slide A pull quote with attribution Velden en detail

    Velden

    Sleutel Type Verplicht Limiet Opties
    quoteAlign enum Nee left, center
    quote string Ja 400
    authorName string Ja 80
    authorTitle string Ja 120
    authorImage1 image Nee
    authorImage1Alt string Nee 180
    authorImage2 image Nee
    authorImage2Alt string Nee 180
    quotes items Nee Herhaalt, elk item met: quote, authorName, authorTitle, authorImage, authorImageAlt, authorImage2, authorImage2Alt

    Layoutvarianten

    • Left
    • Centred

    Pak dit als

    • Direct quotes from interviews
    • Memorable one-liners or punchy statements
    • Testimonials or endorsements
    • Key takeaways phrased as quotes

    Pak iets anders als

    • Long passages (summarize or use content-slide)
    • Multiple quotes (use one quote-slide per quote, spaced apart)
    • Back-to-back placement (space them out in the deck)

    Itemvorm: quotes[] Identiteit: eu.deckyard.slide.quote Tier: 1 Runtime: static JSON Schema

  • Image slide image-slide A single full-bleed image Velden en detail

    Velden

    Sleutel Type Verplicht Limiet Opties
    title string Nee 80
    subheading string Nee 140
    bottomSubheading string Nee 200
    image image Nee
    imageRole enum Nee content, decorative
    alt string Nee 180
    caption string Nee 160
    focusX number Nee
    focusY number Nee
    fit enum Nee cover, contain
    bleed boolean Nee
    layout enum Nee full, bleed, centered
    background enum Nee lime, mist
    zoomSteps enum Nee , corners, horizontal, vertical, quadrants, custom
    zoomLevel number Nee
    zoomPositions string Nee 500

    Pak dit als

    • Powerful standalone visuals
    • Full-bleed photos or screenshots
    • Visual breaks in the presentation

    Pak iets anders als

    • Content that needs text explanation (use image-text-slide)

    Itemvorm: Alleen losse velden Identiteit: eu.deckyard.slide.image Tier: 1 Runtime: static JSON Schema

  • Embed embed-slide Embed an external page or iframe Velden en detail

    Velden

    Sleutel Type Verplicht Limiet Opties
    title string Nee 120
    embedUrl string Ja 500
    aspectRatio enum Nee 16:9, 4:3, 1:1, auto
    sandbox enum Nee restricted, permissive
    background enum Nee lime, mist

    Pak dit als

    • Showing a live prototype, board, or dashboard during the talk
    • Content that must stay current between rehearsal and delivery

    Pak iets anders als

    • A video (use video-slide)
    • A static picture of a tool (use image-slide)
    • Any case where you would have to invent the URL

    Itemvorm: Alleen losse velden Identiteit: eu.deckyard.slide.embed Tier: 2 Runtime: static Valt terug op: content-slide JSON Schema

  • Countdown timer Zaal countdown-slide A countdown timer Velden en detail

    Velden

    Sleutel Type Verplicht Limiet Opties
    title string Nee 120
    durationMinutes number Nee
    durationSeconds number Nee
    autoStart enum Nee off, on
    flashOnZero enum Nee on, off
    soundOnZero enum Nee off, on
    zeroText string Nee 60
    background enum Nee lime, mist, dark, accent, brand-1, brand-2, custom

    Pak dit als

    • Breaks with a stated length ("15 minutes")
    • Timeboxed exercises in a workshop deck

    Pak iets anders als

    • Marking a section boundary (use chapter-title-slide)
    • A deck that is presented straight through without pauses

    Itemvorm: Alleen losse velden Identiteit: eu.deckyard.slide.countdown Tier: 2 Runtime: timed Valt terug op: content-slide JSON Schema

  • Likert slider (1–10) Zaal likert-slider-slide A 1–10 slider rating Velden en detail

    Velden

    Sleutel Type Verplicht Limiet Opties
    question string Ja 200
    minLabel string Nee 120
    maxLabel string Nee 120
    background enum Nee lime, mist

    Pak dit als

    • "Rate from 1 to 10" questions
    • "How likely are you to..." questions
    • Confidence or intensity ratings

    Pak iets anders als

    • Labeled categories (use likert-slide)
    • Multiple choice (use poll-slide)

    Itemvorm: Alleen losse velden Identiteit: eu.deckyard.slide.likert-slider Tier: 2 Runtime: live (likert) Valt terug op: content-slide JSON Schema

  • Feedback Zaal feedback-slide Collect open text feedback Velden en detail

    Velden

    Sleutel Type Verplicht Limiet Opties
    question string Ja 200
    placeholder string Nee 120
    background enum Nee lime, mist

    Pak dit als

    • Open feedback prompts
    • "What should we improve?" questions
    • Collecting ideas or suggestions

    Pak iets anders als

    • Structured questions (use poll or likert slides)

    Itemvorm: Alleen losse velden Identiteit: eu.deckyard.slide.feedback Tier: 2 Runtime: live (feedback) Valt terug op: content-slide JSON Schema

  • Comparison comparison-slide Two options side by side Velden en detail

    Velden

    Sleutel Type Verplicht Limiet Opties
    title string Nee 120
    subheading string Nee 200
    bottomSubheading string Nee 200
    leftTitle string Ja 100
    leftBody markdown Ja 2000
    rightTitle string Ja 100
    rightBody markdown Ja 2000
    verdict string Nee 100
    variant enum Nee versus, before-after, pros-cons, tradeoff
    background enum Nee lime, mist

    Pak dit als

    • A vs B comparisons (products, approaches)
    • Pros and cons analysis (variant: pros-cons, pros on the left)
    • Before vs after transformations (variant: before-after, before on the left)
    • Option evaluation and decision support (variant: tradeoff)

    Pak iets anders als

    • More than 2 options (use table-slide or icon-card-grid-slide)
    • 2x2 matrices like SWOT (use matrix-slide)

    Itemvorm: Alleen losse velden Identiteit: eu.deckyard.slide.comparison Tier: 2 Runtime: static Valt terug op: table-slide JSON Schema

  • Custom HTML custom-html-slide Your own HTML and CSS, for anything else Velden en detail

    Velden

    Sleutel Type Verplicht Limiet Opties
    html code Nee 20000
    css code Nee 10000
    background enum Nee lime, mist

    Itemvorm: Alleen losse velden Identiteit: eu.deckyard.slide.custom-html Tier: 2 Runtime: static Valt terug op: content-slide JSON Schema

  • End / Contact end-slide A closing slide with contact details Velden en detail

    Velden

    Sleutel Type Verplicht Limiet Opties
    title string Ja 120
    body markdown Nee 500
    contactName string Nee 80
    contactEmail string Nee 120
    contactPhone string Nee 40
    contactUrl string Nee 200
    social1Label string Nee 40
    social1Url string Nee 200
    social2Label string Nee 40
    social2Url string Nee 200
    background enum Nee lime, mist

    Pak dit als

    • Final slide with contact information
    • Thank you / closing slide
    • Slides where the audience needs follow-up details

    Pak iets anders als

    • Brand-only closing without contact info (use payoff-slide)
    • Content slides mid-deck

    Itemvorm: Alleen losse velden Identiteit: eu.deckyard.slide.end Tier: 1 Runtime: static JSON Schema

Collection 15 types

n items of one repeated shape.

Eén array met items die allemaal dezelfde vorm hebben. Loop de array af, render het item, herhaal.

  • List list-slide A bulleted or numbered list Velden en detail

    Velden

    Sleutel Type Verplicht Limiet Opties
    title string Ja 120
    subheading string Nee 160
    variant enum Nee bullets, numbers
    layout enum Nee auto, one-column, two-column
    density enum Nee auto, comfortable, compact
    asideVariant enum Nee none, note, tip, warning
    asideText markdown Nee 300
    background enum Nee lime, mist
    items items Ja Herhaalt, elk item met: title, text
    headerAlign enum Nee left, center

    Layoutvarianten

    • Left
    • Centred

    Pak dit als

    • Tips, recommendations, or best practices
    • Meeting agendas (not roadmaps - those are timeline)
    • Steps with short explanations
    • Do/don't lists
    • Key takeaways or highlights
    • Any list where items have both a title AND a brief explanation

    Pak iets anders als

    • NUMERIC HIGHLIGHTS like "220 trajectories" or "10,000 professionals" (use kpi-metrics-slide!)
    • Output targets or deliverables with specific numbers (use kpi-metrics-slide)
    • Parallel categories that should be compared side-by-side (use card slides)
    • Timeline/roadmap with phases over time (use timeline-slide)
    • Simple bullets without title+text structure (use content-slide)

    Itemvorm: items[] Identiteit: eu.deckyard.slide.list Tier: 1 Runtime: static JSON Schema

  • KPI kpi-metrics-slide Big numbers with deltas Velden en detail

    Velden

    Sleutel Type Verplicht Limiet Opties
    title string Nee 120
    subheading string Nee 200
    bottomSubheading string Nee 200
    background enum Nee lime, mist
    accent enum Nee none, highlight-best, highlight-risk
    countUp enum Nee off, on
    metrics items Nee Herhaalt, elk item met: value, unit, label, note
    headerAlign enum Nee left, center

    Layoutvarianten

    • Left
    • Centred

    Pak dit als

    • NUMERIC OUTPUT TARGETS: "220 research trajectories", "10,000 professionals"
    • Programme deliverables with specific numbers
    • Key performance indicators and goals
    • Budget figures or funding amounts
    • Statistics and metrics that should STAND OUT
    • Before/after comparisons with change indicators
    • Any 1-4 numbers that are the KEY POINT of the slide

    Pak iets anders als

    • More than 4 metrics (split into multiple slides or use table/chart)
    • Qualitative descriptions without clear numeric values
    • Lists of activities or processes (use list-slide or text-blocks-slide)

    Itemvorm: metrics[] Identiteit: eu.deckyard.slide.kpi-metrics Tier: 2 Runtime: static Valt terug op: list-slide JSON Schema

  • Images + text image-set-slide Two or three images with text Velden en detail

    Velden

    Sleutel Type Verplicht Limiet Opties
    title string Ja 120
    body markdown Ja 3000
    images items Ja Herhaalt, elk item met: src, alt, fit, focusX, focusY
    caption string Nee 160
    imageRole enum Nee content, decorative
    layout enum Nee beside, top, bottom
    imageSide enum Nee left, right
    imageWidth enum Nee half, narrow, wide
    textColumns enum Nee 1, 2
    imageBackground enum Nee white, match
    density enum Nee auto, compact
    asideVariant enum Nee none, note, tip, warning
    asideText markdown Nee 300
    background enum Nee lime, mist
    actions items Nee Herhaalt, elk item met: label, url, style

    Layoutvarianten

    • Beside text
    • Row above
    • Row below
    • Image 1/2
    • Text only

    Pak dit als

    • A small set of 2-3 related images with one shared story
    • Before/after or step-by-step visuals that belong on one slide
    • A product or location shown from a few angles

    Pak iets anders als

    • One image beside text (use image-text-slide)
    • Many images without text (use gallery-slide)
    • Heavy text content (use content-slide or split into multiple)

    Itemvorm: images[]actions[] Identiteit: eu.deckyard.slide.image-set Tier: 2 Runtime: static Valt terug op: image-text-slide JSON Schema

  • Image blocks team-cards-slide Image blocks in a grid Velden en detail

    Velden

    Sleutel Type Verplicht Limiet Opties
    title string Nee 120
    subheading string Nee 220
    bottomSubheading string Nee 200
    subheading2 string Nee 220
    members items Nee Herhaalt, elk item met: image, alt, imageFocusX, imageFocusY, name, byline, linkedin
    background enum Nee lime, mist
    textPosition enum Nee below, split
    imageShape enum Nee rounded, square, circle
    imageAspect enum Nee square, original
    showPhotoFrame enum Nee off, on
    columnSplit enum Nee , 1, 2, 3, 4, 5

    Pak dit als

    • Multiple screenshots / UI captures in one slide (imageAspect: original)
    • Testimonials or mixed image grids with short labels
    • Team introductions and speaker panels (name + role)
    • Advisory boards or committees (up to 25, imageShape: circle)
    • Any set of separate images that each want a small Title/Caption

    Pak iets anders als

    • A single hero image (use image-slide)
    • One image beside a paragraph of text (use image-text-slide)
    • A curated photo gallery with masonry/featured layout (use gallery-slide)
    • More than 25 blocks (split into multiple slides)

    Itemvorm: members[] Identiteit: eu.deckyard.slide.team-cards Tier: 2 Runtime: static Valt terug op: list-slide JSON Schema

  • Logo wall logo-wall-slide A wall of logos Velden en detail

    Velden

    Sleutel Type Verplicht Limiet Opties
    headerAlign enum Nee left, center
    title string Nee 120
    subheading string Nee 220
    background enum Nee lime, mist
    logos items Nee Herhaalt, elk item met: image, name, alt, link

    Layoutvarianten

    • Left
    • Centred

    Pak dit als

    • Partner organizations
    • Sponsors and funding bodies
    • Client logos
    • Supporter acknowledgments
    • Consortium or coalition members

    Pak iets anders als

    • Detailed partner descriptions (use content-slide or icon-card-grid-slide)
    • People (use team-cards-slide)
    • Screenshots or photos that want captions (use team-cards-slide or gallery-slide)

    Itemvorm: logos[] Identiteit: eu.deckyard.slide.logo-wall Tier: 2 Runtime: static Valt terug op: image-slide JSON Schema

  • Icon cards icon-card-grid-slide Cards with an icon and label Velden en detail

    Velden

    Sleutel Type Verplicht Limiet Opties
    title string Ja 120
    subheading string Nee 200
    layout enum Nee cards, tiles
    bottomSubheading string Nee 200
    items items Nee Herhaalt, elk item met: icon, title, body, link

    Pak dit als

    • 4-6 parallel categories or pillars
    • Focus areas or strategic priorities
    • Company values or principles
    • Product features or capabilities
    • Workstreams, departments, or teams
    • Service offerings
    • Benefits or advantages
    • Any set of 4-6 things that can each have a meaningful icon

    Pak iets anders als

    • Time-based sequences (use timeline-slide)
    • Items that need very long descriptions or bullets (use text-blocks-slide)
    • Cause-effect relationships (use text-blocks-slide)
    • Simple lists without icons (use list-slide)

    Itemvorm: items[] Identiteit: eu.deckyard.slide.icon-card-grid Tier: 2 Runtime: static Valt terug op: list-slide JSON Schema

  • Poll Zaal poll-slide A live audience poll Velden en detail

    Velden

    Sleutel Type Verplicht Limiet Opties
    question string Ja 200
    options items Ja Herhaalt, elk item met: text
    background enum Nee lime, mist
    onClose enum Nee stay, next, goto
    onCloseTarget string Nee 100

    Pak dit als

    • Audience questions with discrete options
    • "Which do you prefer?" style questions
    • Quick pulse checks

    Pak iets anders als

    • Open-ended questions (use feedback-slide)
    • Scale ratings (use likert slides)

    Itemvorm: options[] Identiteit: eu.deckyard.slide.poll Tier: 2 Runtime: live (poll) Valt terug op: list-slide JSON Schema

  • Likert (agree/disagree) Zaal likert-slide An agree/disagree rating Velden en detail

    Velden

    Sleutel Type Verplicht Limiet Opties
    question string Ja 200
    options items Ja Herhaalt, elk item met: text
    background enum Nee lime, mist
    onClose enum Nee stay, next, goto
    onCloseTarget string Nee 100

    Pak dit als

    • Agreement/disagreement questions
    • Satisfaction ratings
    • Any question with a labeled scale

    Pak iets anders als

    • Multiple choice (use poll-slide)
    • Numeric 1-10 rating (use likert-slider-slide)

    Itemvorm: options[] Identiteit: eu.deckyard.slide.likert Tier: 2 Runtime: live (likert) Valt terug op: list-slide JSON Schema

  • Text blocks text-blocks-slide Several labelled text blocks Velden en detail

    Velden

    Sleutel Type Verplicht Limiet Opties
    title string Ja 120
    subheading string Nee 200
    bottomSubheading string Nee 200
    rows items Nee Herhaalt, elk item met: title, color, arrow, blocks
    row1Count enum Nee 1, 2, 3, 4, 5, 6
    row1Color enum Nee yellow, black
    row1Block1Title string Nee 80
    row1Block1Body markdown Nee 500
    row1Block2Title string Nee 80
    row1Block2Body markdown Nee 500
    row1Block3Title string Nee 80
    row1Block3Body markdown Nee 500
    row1Block4Title string Nee 80
    row1Block4Body markdown Nee 500
    row1Block5Title string Nee 80
    row1Block5Body markdown Nee 500
    row1Block6Title string Nee 80
    row1Block6Body markdown Nee 500
    arrow1 enum Nee none, down, up
    row2Enabled enum Nee no, yes
    row2Title string Nee 120
    row2Count enum Nee 1, 2, 3, 4, 5, 6
    row2Color enum Nee yellow, black
    row2Block1Title string Nee 80
    row2Block1Body markdown Nee 500
    row2Block2Title string Nee 80
    row2Block2Body markdown Nee 500
    row2Block3Title string Nee 80
    row2Block3Body markdown Nee 500
    row2Block4Title string Nee 80
    row2Block4Body markdown Nee 500
    row2Block5Title string Nee 80
    row2Block5Body markdown Nee 500
    row2Block6Title string Nee 80
    row2Block6Body markdown Nee 500
    arrow2 enum Nee none, down, up
    row3Enabled enum Nee no, yes
    row3Title string Nee 120
    row3Count enum Nee 1, 2, 3, 4, 5, 6
    row3Color enum Nee yellow, black
    row3Block1Title string Nee 80
    row3Block1Body markdown Nee 500
    row3Block2Title string Nee 80
    row3Block2Body markdown Nee 500
    row3Block3Title string Nee 80
    row3Block3Body markdown Nee 500
    row3Block4Title string Nee 80
    row3Block4Body markdown Nee 500
    row3Block5Title string Nee 80
    row3Block5Body markdown Nee 500
    row3Block6Title string Nee 80
    row3Block6Body markdown Nee 500

    Pak dit als

    • Cause→effect: activities/programmes (A, B, C) that PRODUCE specific outputs
    • Input→processing→output flows
    • Problem→solution or challenge→response structures
    • Before→after transformations
    • Strategy→tactics→results chains
    • Any 2-3 row structure where each row LEADS TO the next
    • Consequence chains: X causes Y, which causes Z. Prefer this over process-slide when nobody performs the steps -- the items are outcomes, not actions

    Pak iets anders als

    • Plain enumerations or lists of points (use list-slide or content-slide)
    • Parallel items/categories with NO causal or sequential relationship — use list-slide, or icon-card-grid-slide if each needs an icon
    • A single row of blocks used just to group text (use list-slide)
    • Single items without grouping (use content-slide)
    • Sequential timelines with dates (use timeline-slide)
    • Items that each need an icon (use icon-card-grid-slide)

    Itemvorm: rows[] Identiteit: eu.deckyard.slide.text-blocks Tier: 2 Runtime: static Valt terug op: list-slide JSON Schema

  • Process process-slide Sequential steps with arrows Velden en detail

    Velden

    Sleutel Type Verplicht Limiet Opties
    title string Ja 120
    subheading string Nee 200
    bottomSubheading string Nee 200
    direction enum Nee horizontal, vertical
    items items Ja Herhaalt, elk item met: title, text
    background enum Nee lime, mist

    Pak dit als

    • Step-by-step procedures
    • Onboarding processes
    • Implementation methodologies
    • How-to guides with sequential steps
    • Project phases

    Pak iets anders als

    • Recurring/cyclical processes (use cycle-slide)
    • Timelines with specific dates (use timeline-slide)
    • Narrowing conversions (use funnel-slide)
    • Chains where each item CAUSES the next rather than being carried out in order (use text-blocks-slide). Test: can you name who performs each step? If yes it is a process; if the items are consequences nobody performs, it is a causal chain

    Itemvorm: items[] Identiteit: eu.deckyard.slide.process Tier: 2 Runtime: static Valt terug op: list-slide JSON Schema

  • Timeline timeline-slide Events along a timeline Velden en detail

    Velden

    Sleutel Type Verplicht Limiet Opties
    title string Nee 120
    subheading string Nee 200
    bottomSubheading string Nee 200
    items items Ja Herhaalt, elk item met: date, title, text
    background enum Nee lime, mist

    Pak dit als

    • Roadmaps with phases (Q1/Q2/Q3, Year 1/2/3, Phase 1/2/3)
    • Company history and milestones
    • Project retrospectives and future plans
    • Historical event sequences
    • Product evolution timelines
    • Future development plans
    • Now/Next/Later timelines

    Pak iets anders als

    • Meeting agendas (use list-slide)
    • Non-sequential items (use icon-card-grid-slide or list-slide)
    • More than 10 items (split into multiple slides)
    • Processes without dates/phases (use process-slide)
    • Undated summary/total lines as items (put them in bottomSubheading)

    Itemvorm: items[] Identiteit: eu.deckyard.slide.timeline Tier: 2 Runtime: static Valt terug op: list-slide JSON Schema

  • Funnel funnel-slide Stages narrowing to a goal Velden en detail

    Velden

    Sleutel Type Verplicht Limiet Opties
    title string Ja 120
    subheading string Nee 200
    bottomSubheading string Nee 200
    items items Ja Herhaalt, elk item met: label, value, text
    background enum Nee lime, mist

    Pak dit als

    • Sales funnels (Leads > Qualified > Closed)
    • Marketing funnels (Awareness > Interest > Conversion)
    • Recruitment funnels
    • Any narrowing process with decreasing numbers

    Pak iets anders als

    • Hierarchies without quantity reduction (use pyramid)
    • Processes that don't narrow (use process-slide)
    • Circular processes (use cycle-slide)

    Itemvorm: items[] Identiteit: eu.deckyard.slide.funnel Tier: 2 Runtime: static Valt terug op: list-slide JSON Schema

  • Pyramid pyramid-slide A layered hierarchy pyramid Velden en detail

    Velden

    Sleutel Type Verplicht Limiet Opties
    title string Ja 120
    subheading string Nee 200
    bottomSubheading string Nee 200
    levels items Ja Herhaalt, elk item met: label, text
    background enum Nee lime, mist

    Pak dit als

    • Maslow-style need pyramids
    • Priority levels (Critical > High > Medium > Low)
    • Organizational hierarchies
    • Skill progression pyramids

    Pak iets anders als

    • Narrowing funnels with metrics (use funnel-slide)
    • Linear processes (use process-slide)
    • Circular processes (use cycle-slide)

    Itemvorm: levels[] Identiteit: eu.deckyard.slide.pyramid Tier: 2 Runtime: static Valt terug op: list-slide JSON Schema

  • Cycle cycle-slide A repeating cycle of stages Velden en detail

    Velden

    Sleutel Type Verplicht Limiet Opties
    title string Ja 120
    subheading string Nee 200
    bottomSubheading string Nee 200
    centerLabel string Nee 60
    items items Ja Herhaalt, elk item met: label, text
    background enum Nee lime, mist

    Pak dit als

    • PDCA (Plan-Do-Check-Act) cycles
    • Agile/Scrum sprint cycles
    • Continuous improvement processes
    • Feedback loops
    • Any process that repeats indefinitely

    Pak iets anders als

    • Linear one-time processes (use process-slide)
    • Timelines with dates (use timeline-slide)
    • Narrowing funnels (use funnel-slide)

    Itemvorm: items[] Identiteit: eu.deckyard.slide.cycle Tier: 2 Runtime: static Valt terug op: list-slide JSON Schema

  • Gallery gallery-slide A grid of images Velden en detail

    Velden

    Sleutel Type Verplicht Limiet Opties
    title string Nee 120
    subheading string Nee 200
    bottomSubheading string Nee 200
    layout enum Nee grid, masonry, featured
    images items Ja Herhaalt, elk item met: src, focusX, focusY, caption, alt
    background enum Nee lime, mist

    Pak dit als

    • Several screenshots or UI captures in one slide (use layout: masonry)
    • A photo gallery or set of related images
    • 2-6 images shown together where the images tell the story
    • Mixed aspect-ratio images that must not be cropped (masonry)

    Pak iets anders als

    • A single hero image (use image-slide)
    • One image beside a paragraph of text (use image-text-slide)
    • More than 6 images, or images each needing a Title + Caption (use team-cards-slide)
    • Partner/sponsor logos (use logo-wall-slide)

    Itemvorm: images[] Identiteit: eu.deckyard.slide.gallery Tier: 2 Runtime: static Valt terug op: image-slide JSON Schema

Fixed collection 1 type

Exactly n items; the count carries meaning.

Hetzelfde itemcontract als een collection, met een vast aantal, omdat dat aantal betekenis draagt: vier kwadranten is wat een matrix een matrix maakt.

Twee hiervan houden zich er nog niet aan: poll-slide en likert-slide dragen option1..optionN als losse velden in plaats van een array, omdat ze de migratie die de andere collections kregen nooit gehad hebben. Ze staan hier genoemd in plaats van stilletjes naar boven afgerond.

  • Matrix matrix-slide A 2×2 quadrant matrix Velden en detail

    Velden

    Sleutel Type Verplicht Limiet Opties
    title string Nee 120
    subheading string Nee 200
    bottomSubheading string Nee 200
    cells items Ja Herhaalt, elk item met: title, body, tone
    background enum Nee lime, mist

    Pak dit als

    • SWOT analysis
    • Risk vs Impact matrices
    • Urgent vs Important (Eisenhower)
    • Any 2x2 framework or quadrant analysis

    Pak iets anders als

    • Simple A vs B (use comparison-slide)
    • More than 4 categories (use text-blocks or table)

    Itemvorm: cells[] Identiteit: eu.deckyard.slide.matrix Tier: 2 Runtime: static Valt terug op: table-slide JSON Schema

Tabular 1 type

Rows and columns.

Rijen met cellen. De rij is het item; de kolommen zijn posities daarbinnen.

  • Table table-slide A data table Velden en detail

    Velden

    Sleutel Type Verplicht Limiet Opties
    title string Ja 120
    caption string Nee 240
    headerRow enum Nee on, off
    tableStyle enum Nee plain, panel, soft
    cornerCell enum Nee label, header
    animateByCell enum Nee off, on
    rows items Nee Herhaalt, elk item met: c1, c2, c3, c4, c5, c6, c7, c8, c9, c10
    colCount enum Nee 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
    background enum Nee lime, mist

    Pak dit als

    • Comparison tables
    • Feature matrices
    • Schedules or structured data
    • Country/region benchmarks
    • Side-by-side metrics

    Pak iets anders als

    • Numeric data that would visualize better (use chart-slide)
    • Large datasets (summarize or link externally)
    • More than 10 columns (simplify or split)

    Itemvorm: rows[] Identiteit: eu.deckyard.slide.table Tier: 1 Runtime: static JSON Schema

Dataset 1 type

Data points plus an encoding.

Datapunten plus een codering. De payload is een gecodeerd blok in plaats van benoemde velden, dus dit is de enige vorm die een renderer niet generiek kan aflopen.

  • Chart chart-slide A bar, line or pie chart Velden en detail

    Velden

    Sleutel Type Verplicht Limiet Opties
    title string Ja 120
    subheading string Nee 220
    bottomSubheading string Nee 200
    chartType enum Ja bar, line, pie
    data csv Ja 20000
    pieLabelMode enum Nee none, value, %, both
    showLegend enum Nee yes, no
    showValues enum Nee yes, no
    xLabel string Nee 80
    yLabel string Nee 80
    series1Label string Nee 80
    series2Label string Nee 80
    background enum Nee lime, mist
    headerAlign enum Nee left, center

    Layoutvarianten

    • Left
    • Centred

    Pak dit als

    • Trends over time (line chart)
    • Category comparisons (bar chart)
    • Parts of a whole (pie chart)
    • Any numeric data that benefits from visualization

    Pak iets anders als

    • Non-numeric comparisons (use table-slide)
    • Complex multi-dimensional data
    • Data that needs exact values shown (use table-slide)

    Itemvorm: Alleen losse velden Identiteit: eu.deckyard.slide.chart Tier: 2 Runtime: static Valt terug op: table-slide JSON Schema

Chrome 2 types

No content fields at all.

Helemaal geen inhoudsvelden. De slide is zijn eigen meubilair, dus er valt niets uit te lezen.

  • Payoff payoff-slide A closing payoff statement Velden en detail

    Pak dit als

    • Final slide of a presentation
    • Brand reinforcement

    Pak iets anders als

    • Content that needs explanation
    • Anything mid-deck
    • Slides that need contact details (use end-slide)

    Itemvorm: Alleen losse velden Identiteit: eu.deckyard.slide.payoff Tier: 2 Runtime: static Valt terug op: end-slide JSON Schema

  • Follow-along invite Zaal follow-invite-slide A QR code to follow along Velden en detail

    Itemvorm: Alleen losse velden Identiteit: eu.deckyard.slide.follow-invite Tier: 2 Runtime: static Valt terug op: content-slide JSON Schema

De velden die elk type meedraagt

Negen velden worden aan elk slidetype toegevoegd in plaats van per type gedeclareerd: twee voor wat een schermlezer aankondigt, zes voor een achtergrondbeeld per slide en hoe dat behandeld wordt, en één voor het themalogo.

Sleutel Type Opties
a11yTitle string
a11ySummary string
slideBgImage image
slideBgFit enum cover, contain
slideBgFocusX number
slideBgFocusY number
slideBgOverlay enum auto, none, light, dark, gradient-top, gradient-bottom
slideBgText enum auto, light, dark
slideLogo enum none, top-right

Uitgefaseerde types

Deze worden niet meer aangeboden als je een slide toevoegt, maar ze renderen nog wel, want decks die ze gebruiken bestaan nog steeds en een deck dat niet meer opengaat is een deck dat je kwijt bent. Ze hebben met opzet geen layouttekening: niets hoort je uit te nodigen er nog een te gebruiken.

Het schema van elk type wordt ook live geserveerd, door elke draaiende installatie:

https://sandbox.deckyard.eu/api/v1/schema/slide-types/<type>.json

Niets op deze pagina is met de hand ingetikt: de lijst, de aantallen, de veldtabellen en de tekeningen worden uit de core-registry gegenereerd. Dezelfde registry als één platte, doorzoekbare tabel staat in de documentatie. Volledige referentie