Documentation
Everything you need to put the right thing on every screen — from your first story to live presenters and the API that keeps it all in sync.
Main hall
Ada Lovelace Head of Research, Analytical Engines Ltd
Guides
- Core concepts Stories, scenes, shots, layouts, stages, the call sheet, shows, presets and rules — what each one is and how they fit.
- Templates and data Design a scene once with blanks, fill it many times, and keep the values in records outside systems update by ref.
- Getting started From an empty workspace to a story playing on a screen, in six steps.
- Schedule and go live Book stories on the call sheet, run an event day with shows and cues, and take over screens from the live board.
- Live presenters Invite people to present live on your screens: sessions, invite links, rehearsals, backstage and going live.
- Screens that change themselves Rules let a block appear, hide, recolor or retire itself when the clock, the data or the live session says so — without anyone at a desk.
- Screens & players Put a stage on a real screen with a browser, the Android TV app, the desktop app or a Raspberry Pi — and keep every screen playing.
- Team & roles Who can do what: owner, editor, operator and viewer, operators for one venue, lending stages to another workspace, and guest operators.
- AI agents (MCP) Connect Claude, ChatGPT or another AI agent to Wunderframe: what it can do for you, how it signs in, and the cards it shows before it changes a screen.
- Cast zones Let guests share a phone, a laptop, a camera or a video onto a screen — with a code on screen or an operator’s approval — and cut it from the Live board.
- TV channels Play live TV inside your designs: add your provider’s channel lists to a venue, test them on a screen at the venue, and change channels from the Live board or by rules.
- Custom renderers For partners: replace the part of the player that draws, with your own renderer.html — what it is, the render protocol in short, and how to upload, activate and roll back.
- Publishing Edit freely, then push your changes to the screens when they are ready — now, at a set time, or to one room first. Roll back or hold a stage.
- Loops and continuity A story of one shot that stays on screen, loops for video, sound and motion, freeze frames, a video that keeps running from shot to shot, and a chapter played for a set time.
- Countdowns and progress Count down to the doors opening or the next talk, with numbers, a bar or a ring. Where the time comes from, and how to set it up by hand, with the event kit or with an AI agent.
- People in front of the screen Play a story, or show a picture, while someone stands in front of a screen — a rule that reads the screen's camera, and only people who are close.
- From data to screen How any collection — a program, a news feed, sponsors — reaches a screen, and how a visitor opens one record with a touch or a hand.
- Your program as data Put an event's program into Wunderframe — sessions, rooms, times, speakers and pictures — without showing it on any screen yet. By hand, from a spreadsheet, or with an AI agent.
- Live engagement Guests scan a QR code and send sticky notes, questions, polaroids and short videos to your screens — no app, no login, on every wall at once.
- Operator guide Run the day from the Live board — shows and GO, presenter sessions, one room from a phone, and Blackout.
- Gesture guide A drawn hand that shows visitors how to use a screen with their hands — raise, point, pinch, hold still, swipe — laid over the screen while someone is there, until they raise a hand.
- Calibrate a screen Make hand gestures comfortable where the screen hangs — a one-minute wizard on the screen itself measures the distance, a relaxed hand's comfort zone and the pinch for that camera.
- Demo from a laptop Open the real player on a laptop with the operator strip — camera, calibration, the camera's view, steering and a presence simulator — and rehearse a visitor without a camera.
- Hands and presence How a visitor's hand steers the cursor, what counts as someone being there, and how a screen moves smoothly from its loop to a visitor and back.
- Languages and phones A screen that speaks German, English and French turns all of its words together, one language at a time — and guests' phones show one language, readably.
- Moments on screens How a guest's photo arrives on a screen — corner, spotlight, make room, the cardboard slip-in or a flight from the bottom edge — and how the next scene waits for it.
- Portrait and widescreen Pair a portrait scene with a widescreen twin. One story then plays on a kiosk and a wide screen, each in its own shape, at the same moment.
- Showcase links Send anyone a live, no-login link to one of your screens. It plays exactly like the real screen, and nothing a visitor does reaches the stage.
- Share your laptop Turn a meeting-room screen into one anyone can share to — a cast zone, a code on screen, and wunderframe.com/cast on the laptop. No cables, no app.
API reference
A versioned REST API with one key type, one error shape and an OpenAPI document you can feed to any client generator.
- Event sync 3 endpoints For an event system that owns the program — Maravilla Studio’s Event Suite, or your own: send the whole event (rooms, speakers, sessions, tracks, translations) and Wunderframe makes or updates the agenda records, presenters, rooms, live sessions and shows, idempotently by your keys. Set the workspace brand from the event’s brand kit.
- Getting started 5 endpoints From a new workspace to a screen that plays: the setup checklist, and quick starts that make a news feed story, a TV channel story, or headlines followed by a few minutes of TV — ordinary stories and scenes you can change afterwards.
- Venues and the call sheet 14 endpoints The places screens are in (each with its time zone), what a stage plays whenever nothing is booked, and the call sheet: stories booked on stages for time windows. A take or a rule still wins over a booking.
- Stages 1 endpoint The screens, projectors and video walls in your workspace. Read them to find the stage_id a session plays on.
- Channels 3 endpoints TV channels imported from your provider’s playlists (M3U / XSPF), and each stage’s current channel. Switching a stage’s channel changes only the video that shows “the stage’s channel” — the rest of the slide stays.
- Presenters 10 endpoints The people who present live on your screens. Import them from a speaker portal or CRM with your own ref, keep them in sync with an idempotent upsert, and upload their photos.
- Sessions 12 endpoints A session is one dated presenter slot in a room: a remote speaker joins through a personal link and appears on every screen of the room (or the screens chosen, or one stage). Plan sessions from your agenda tool, hand out presenter links and schedule rehearsals. Going live and finishing stay with the operator in the app.
- Engagements 19 endpoints Live engagements: the sticky notes, questions and polaroid walls guests post to from their phones. Any system can post into one like a guest — a photo booth, a kiosk, an app — through the same moderation, and get a signed take-home link for each photo or video. Live polls (multiple choice, word clouds, ratings) are prepared and run under /engagements/{id}/polls and /polls/{poll_id}. The posting flow: POST /engagements/{id}/uploads, PUT the file to the upload_url, then POST /engagements/{id}/posts; poll GET /engagements/{id}/posts/{post_id} until share_ready before you show the take-home QR code.
- Collections and feeds 4 endpoints Collections hold the records templates fill from; a feed (RSS, Atom, JSON Feed or a news website) keeps one up to date. Each feed item is a record with title, summary, image, date, time, author, category, link and feed_title. Write records yourself under Records.
- Records 7 endpoints The words your screens show. A template scene has blanks (title, speaker, …); a record fills them for one ref, and every scene that plays that ref shows its values. Change a record and open screens update within seconds. **How records are organized.** There are no collections to create: a workspace has one set of records and the ref is the address. The parts between slashes work like folders — your-event/session/b-14, your-event/room/hall-b, cafeteria/menu/monday — so pick a pattern and list one branch with GET /records?prefix=your-event/session/. A record has no fixed fields: its values are the blanks it fills. **Create a record** with POST /records, change it with PATCH /records/{ref}, and sync many at once with POST /records/batch.
- Stories 6 endpoints A story is what a stage plays: chapters (scenes) in order, looping. A chapter can roll a template through a collection, play for a set time (two minutes of TV after the news), or play only at certain times of day. Put a story on a stage with PUT /stages/{id}/idle or POST /bookings.
- Scenes and shots 7 endpoints A SCENE is a named piece of a story; a SHOT is one timed composition inside it. A shot’s timeline is the whole authoring model — canvas, tracks, blocks, audio, rules — the same shape the editor saves, so a timeline read here can be edited and put straight back. **The loop is read, edit, PUT.** GET /shots/{id}, change what you want, PUT /shots/{id}. There is no per-block route on purpose: a block only means something inside its timeline, and one whole-shot write is simpler and cannot interleave with another. **Reads are forgiving, writes are strict.** A screen must never break on a stored shot, so reading drops what it cannot use; writing instead tells you — an unknown block kind or an unknown rule sensor is a 400 naming it. GET /named-conditions/sensors lists the sensors; block kinds come from the app.
- Named conditions 6 endpoints A meaning given a name once — "between_talks", "doors_open" — that any rule on any block can then refer to by key. Change what it means here and every screen using it follows. Conditions are built from SENSORS (the clock, the date, a data value, the live session); GET /named-conditions/sensors lists them with their operators, so you never have to guess. This is configuration, not content: a named condition says what something *means*, never what a screen shows.
- Releases 3 endpoints In a workspace that publishes manually, screens play the newest release, never the working copies. Publish the working copies as a release (now, at a time, or to some stages first), read the history, and roll back — a rollback is a new release equal to an old one. Live operations and data records never wait for a release.
- Assets 9 endpoints The media library: images, video and audio your scenes use. Upload a file and use its id in the app; list the library to find what is there.