Open source · End-to-end · Made in Europe

Presentations, set free.

Deckyard is an open source presentation platform you host yourself, in place of PowerPoint, Canva or Gamma.

Create, present, publish and collaborate in one tool: your brand, your data, and AI that fills slides in rather than designing them.

Try the live sandbox

No install, no signup. AI, uploads and publishing are off.

Not a screenshot: a real deck, exported from Deckyard and dropped into this page with a single tag.

The idea underneath

Every slide knows what it is

A Deckyard slide is not a canvas with boxes on it. It is a record with a type: a timeline knows it holds a sequence, a quote knows it needs attribution, and neither of them carries a single colour. That is where the accessibility, the integrations and the unbreakable house style all come from.

How it works

Background

Historical development of the Stand

  1. 2021 Constituted by resolution
  2. 2022 First strategic partnership
  3. 2025 Trading resumed
  • title string · max 120
  • items required · ordereddate · title · text
timeline-slide Two fields, and not one colour

The pieces

Every deck is made of the same handful of things

A timeline, a comparison, some numbers, a question for the room. Deckyard ships 34 of them as declared types, so you pick the one you mean instead of drawing it.

  • Title slide

  • List

  • Timeline

  • Chart

  • KPI

  • Comparison

  • Process

  • Matrix

  • Quote

  • Poll

    the room answers

  • Likert (agree/disagree)

    the room answers

  • Gallery

  • End / Contact

  • 34 slide types, with their fields

The part nobody has solved

Your people are already letting AI write for the organisation

Not as a policy decision. Somebody had a deck to make on Thursday, pasted the notes into a chat window, and pasted the answer back. It is faster, and it is not going to stop.

What nobody can say is whether what came back stays inside the rules the organisation has: the right claims, the right look, the things that legally have to be there. Reviewing every deck does not scale, and asking people not to use AI has never once worked.

Settled before it runs

  • slide types 34 declared shapes, each with named fields
  • theme.json colours, fonts, logos, spacing
  • deck.schema.json published as v4: what validates

Left for the model

  • type timeline-slide
  • title "Where the money went"
  • items 4 x { date, title }
So the request is "fill in these fields", not "design a slide". A smaller question, a cheaper answer, and nothing left to get wrong that the theme had not already settled.
  • It fills fields, it does not design

    The layout is not the model’s to invent. It asks which slide types exist, picks one, and fills in the fields that type declares. The design was decided before it ran, by you, in the theme.

  • A write is checked like any other

    A field with a declared shape validates whatever fills it. A model that produces a timeline with one moment in it, or a quote with nobody to attribute it to, gets the same refusal a person would.

  • The brand is not in the content

    Colours, fonts and logos live in theme tokens, so there is nothing brand-shaped for a model to get wrong. A generated deck renders in the current house style because that is the only style there is.

What this does not do is make the text true. A model can still write a confident sentence about a number it invented, and no format catches that. What it can no longer do is hand you something that looks nothing like your organisation, or that quietly breaks the shape everything else is in.

No lock-in, written down

Your deck is a file you can read

A deck is JSON. It names the format it is in, the version of that format, and a declared type for every slide. None of that needs Deckyard to be running to be understood.

And the format is published rather than described: the JSON Schema is served from the URL its own $id names, so anyone can validate a deck against it without asking us first.

{
  "format": "deckyard.deck",
  "version": 1,
  "slides": [
    { "type": "eu.deckyard.slide.title", "content": { … } },
    { "type": "eu.deckyard.slide.quote", "content": { … } }
  ]
}
The envelope, shortened

In the room

The deck asks, and the room answers

A poll is a slide type, not a second tool bolted on beside it. You present; people arrive at a short address with a code; and the answers land on the slide everybody is already looking at.

A poll slide during a presentation. Four answers, the bars unequal: 31 of the 47 votes on the third option, with the running total underneath.
poll-slide, mid-presentation
The invitation slide on the big screen: a QR code beside the address deckyard.eu/go and a five-letter access code.
follow-invite-slide, on the big screen

Coming from somewhere else

How this compares to what you use now

Most people reading this make decks in PowerPoint, Google Slides, Canva or Gamma. Every one of them is good at something, and every one of them costs you something. The comparison says which, and where Deckyard is the wrong answer.

Read the comparison

From zero to running

One line. Your own instance.

No signup, no sales call. Paste one line and Deckyard clones, configures and starts itself on your machine, at localhost:4177. Docker or Node 22+ is all it needs.

$ curl -fsSL https://deckyard.eu/install.sh | bash

Auto-detects Docker or Node 22+, writes a local .env, and opens the app.

Read the script first

Or have it run for you: a dedicated instance on your own domain, hosted in Europe, on the same code. The hosting is what pays for the development.

How hosting works

Open source, out now

Explore the code, follow the launch

Deckyard is MIT licensed, GDPR native and built to be self-hosted. The code is public on GitHub today. Star it, run it, or leave your address for launch and hosted-version updates.