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.
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 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 }
-
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": { … } }
]
} 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.
Everything else
And then there is everything around the slide
Making the deck is one half. The other half is your brand, your team, the room you present to, and getting the thing out again afterwards.
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.
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.
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 worksOpen 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.