Teach from anywhere in the room.
Podium turns the classroom computer into a screen you drive from your iPad or phone. Open one browser tab on the machine wired to the projector and walk away. Slides, PDFs, documents, video, handwriting, timers, polls, attendance and your phone's camera all come from the device in your hand, and afterwards every lecture can be searched and replayed.
- Nothing to install
- No build step
- Encrypted end to end
- Free to run
- Open source
New in Podium 1.3
Take attendance, then replay the whole lecture
The biggest release yet. Everything below is new since 1.2; the cards further down mark it New. The full list is in What's new in 1.3.
AttendanceServer
Students scan a code that changes every few seconds, against your roster. Entry and exit tickets, a parking lot for questions, and a Canvas gradebook export.
Replay any lectureServer
Your mic, what was on screen, the captions and polls, in time. Tap the transcript to jump, or record the screen as video too.
Search every lectureServer
"The lecture where I mentioned working memory": search what was said and shown across the term, and play from that moment.
Markdown & Word documents
A plain .md (or a Word or RTF file) as one readable page you scroll for the room, with headings to jump between and ink pinned to the words.
Pinch to zoom
PDFs and photos fill the screen when zoomed. Pinch and drag on the preview or the ink pad; portrait pages keep their shape on your iPad.
A real deck editor
Write slides beside the projector's own preview, with pictures, video slides, Mermaid diagrams, templates, previous versions, and PDF export.
My Files & Quick LookServer
Everything that's yours on the server in one place, and any file previewed privately in its own tab before class.
Stream it live
A step-by-step guide to OBS with YouTube or Twitch, from the classroom PC or from a Guest View link anywhere.
How it works
A few web pages, each with one job
Podium is plain HTML, CSS and JavaScript that any modern browser runs directly. The devices never talk to each other directly. They all check in with a small relay, and everything they say is sealed with your room's passphrase before it leaves the browser.
Swipe the diagram sideways to see all of it.
The display
display.html
Runs fullscreen on the classroom PC. No toolbars, no cursor, no notifications. It shows what it's told and remembers the lecture through a reload.
The controller
control.html
Your remote on an iPad, iPhone or laptop. It holds the library, presenter notes, ink, timers, polls, music and camera. Several controllers can share one room.
The planning desk
plan.html
For your office. Build a lecture's running order, then carry it to class as a
single file, or let it save itself to your own server as you work. The deck editor
(deck.html) sits beside it.
The audience
join.html · attend.html · view.html
Students answer polls and check in for attendance on their own phones with no app and no login. Guest viewers watch the screen on their own device and can't change anything.
A class period with Podium
From your office to the end of class
Here's how the pieces fit into an ordinary teaching day.
-
The night before
Plan it at your desk
- Drag decks, PDFs, clips and notes into a running order.
- Set a target length and saved countdowns.
- Choose what auto-launches when you open it.
-
Ten minutes before
Set the room
- Press G on the classroom PC to go live.
- Scan the pairing QR with your iPad.
- Start background music and a "We begin in…" countdown.
-
During class
Teach, don't click
- Freeze, line up the next thing, then TAKE it.
- Write on slides with ink and point with the laser.
- Take attendance, run a poll, show a document camera, put up captions.
-
After class
Keep what mattered
- Export annotated slides and boards as a ZIP or PDF.
- Download poll results as CSV.
- On your own server, replay the lecture, search what you said, or get a recap PDF.
Every feature, by what you're trying to do
What Podium can do
Features marked Server need Podium's own self-hosted server. Everything else works on every setup, including free GitHub Pages hosting.
- Presenting
- Drawing & pointing
- Media & sound
- On-screen tools
- Engaging the room
- Accessibility
- Sharing the lectern
- Planning
- Make it yours
- After class
- Your own server
Freeze is a cue
Borrowed from a TV control room. Freeze holds the projector still while you open and page through a deck, scrub a video past its ad, open page 42 of a PDF, or mark something up. TAKE cuts it live instantly, ink and all, Swap trades live and cued, and Blank blacks out the room with everything still loaded underneath. Turn on Always cue first and every pick waits in the cue.
Now, Next & Notes
A confidence monitor in your hand: what the room sees, what's coming (down to the next bullet of a build), and your presenter notes. Jump to any slide from a searchable thumbnail grid, or hold one for a pop-out preview. Put a video up mid-deck and the slides stay here, to read ahead in without moving the room; Back to slides puts them up again.
Slides in Markdown
Marp decks rendered live in the browser, with KaTeX math, Mermaid diagrams, progressive builds, presenter notes and your department's own CSS theme.
The deck editorNew
Write a deck beside the projector's own preview, with a toolbar for slides, columns and builds.
Drop in pictures, add video slides, start from course templates, go back to a previous
version, and export a .zip or a PDF. Decks already on the server are edited where they live.
Markdown documentsNew
A plain .md shown as one page to read: scroll it for the room, jump between headings,
and mark it up with ink that stays on the words. Guest viewers can read it at their own pace on a phone.
Quick LookNew
Check a deck, PDF or video privately in its own tab, from the controller, planner, library or deck editor. The projector is never involved.
PDFs, PowerPoint & WordNew
Page through PDFs, and zoom the projector into a figure: zoomed in, the page
fills the screen, and you can pinch and drag on your iPad or tap Fit width.New
A Word or RTF file becomes a readable document, or a PDF if you'd rather keep its layout.
On your own server, .pptx uploads become PDFs automatically.Server
A library of anything
- Decks, picture decks, PDFs, HTML slides
- Video, audio, YouTube and live streams
- Photos, web pages, text signs, QR codes
- Whiteboard, chalkboard, black, timers
Paste any link, or upload a photo from the iPad.
A live web browserNew
Any site on the projector, even the ones that refuse to be embedded, like GitHub and Google. Tap links, scroll, type and go Back from your iPad, and freeze the room's view while you browse ahead. It runs in your server's own browser.Server
Split screen & picture-in-picture
Single, side-by-side, stacked, one-big-two-small, a quad grid, or a PiP inset in any corner. Each panel keeps its own item, zoom and ink, and any of the four can be set up unseen while another fills the screen.
Back to where you were
Wander off to a photo mid-deck and the Back to strip returns you to the exact slide you left, not to the start of the deck.
Live ink
Pen, highlighter and a stroke-by-stroke eraser in any colour and thickness. Ink stays pinned to the slide, and each slide keeps its own drawing. The pad takes the shape of what you draw on, so a portrait page or an upright photo lines up exactly, and a pinch zooms in for detail.
Clean shapes
Pause at the end of a stroke and it snaps into a straight line, arrow, rectangle or circle. Undo and Undo clear rescue a slip.
Laser pointer
Drag across the Now box and a red, green or blue dot follows on the projector, gone the moment you lift your finger.
Spotlight
Dim everything except a circle around your finger, to point the whole room at one line of an equation.
Video, YouTube & live streams
Play, pause, scrub, skip ±10s and loop, without the YouTube site ever reaching the projector. Twitch and YouTube Live streams can play as video and sound, video only, or sound only.
Background music
Playlists for while the room fills. It ducks under lecture video, fades out over three seconds, and can put a "We begin in…" countdown on screen.
A four-channel mixer
Separate faders for content, music and microphones, a Master on every tab, and one-tap mute.
Your iPad as a microphone
Amplify a controller's mic through the room's speakers. On your own server you can also record it with the lecture.Server
Countdown timers
Up to four at once, run by the display so they stay accurate if your iPad sleeps. Split the screen to show two side by side.
Full-screen messages
"Back in 5", a discussion prompt, a title card. Light Markdown, five fonts, a background and text colour, and an optional picture, with a live preview.
Watermarks
Your name, course number or logo pinned to a corner through every change. Courses on your own server can set a default.
Automated sets
A rotation that runs itself (announcements, a QR code, lab rules), each item held for its own seconds, in order or shuffled.
Audience pollsServer
- Multiple choice, with an optional correct answer for quizzes
- Short answer, with a word cloud
- Q&A where students upvote questions
- Voting timers, optional names, CSV export
Results stay on your iPad until you tap Reveal to room.
Document camera
Your phone streams its camera to the projector over a direct connection. Freeze frames of student work and hold four up side by side, each ready for ink.
Guest View
Anyone can watch the live screen, with sound, on their own phone or laptop: the back row, or someone not in the room. It's watch-only and signed by the display, and presenter notes and the cue are never included.
AttendanceServerNew
- Students check in from their own phones: a QR code and a six-digit code on screen that change every few seconds
- Against your course roster (imported from Canvas, Blackboard or Moodle), with guests welcome
- Flags one phone checking in two people, and can require phones to be in the room
- Entry and exit tickets, and an anonymous parking lot for questions
- Emailed receipts, a term grid, CSV and a Canvas gradebook export
Live captions
Your speech, captioned along the bottom of the projector by the browser's own speech recognition. Off by default, with its privacy trade-off stated plainly.
Pre-scripted captions
Write a caption or audio description for any planned item. It appears the moment that item goes live, and never overwrites a live transcript.
Screen readers & contrast
Every control has a name, state changes are announced, text meets WCAG AA contrast, and automated tests keep it that way.
Light or dark, everywhere
A high-contrast light theme for bright rooms and window glare, a dark one, or follow the device, on every page. On your own server it is one choice on your account.
Running order
Drag items into order with notes to yourself and a target length. The lecture's own settings (saved countdowns, the starting layout, auto-launch) sit beside it.
Auto-launch
Opening the plan can stage every panel, start the music and begin a countdown, live, cued or blacked out.
One portable file
A .podium file carries your slides and photos device to device, and nothing is uploaded anywhere.
On your own server, lectures save themselves there as you work, and two edits never silently overwrite each other.Server
Import a whole folderServer
Drop in a ZIP of exported slides, decks, PDFs and media, check what Podium found, then import. Courses can share plan templates.
Choose from the serverServerNew
Pick decks and files already on the server, several at once, and archive last term's lectures out of your list.
Your tabs, your dock
Twelve tabs in four groups by job (Present, Room, Sound, Setup) to reorder or hide, and up to eight bottom-bar shortcut slots.
Keyboards & clickers
A Magic Keyboard or Bluetooth presentation clicker drives the same actions. Press ? for the list.
Pacing clock
Set a lecture budget and a top-bar progress bar turns amber near the end and red when you run over.
Little comforts
Saved defaults for music, mixer, caption and watermark; a phone that works as a thumb remote; Slides beside any other tab on a wide screen; Compact controls; haptic ticks, keep-awake, and optional blackout on connect.
Session export
One ZIP, or one merged PDF, with every photo, annotated slide and board you drew on.
Lecture recapServer
A PDF of the lecture in order: what went up and when, what was said, annotated slides, and each poll's result.
Session historyServer
Past lectures with their timeline, ink and poll results, downloadable again later and pruned on your schedule.
Replay a lectureServerNew
Your mic audio with what was on screen, the captions and polls, all in time, and a transcript you tap to jump. Optionally, the screen itself is kept as video.
Search every lectureServerNew
Find what was said or shown across the whole term, then play from that moment.
Stream it liveNew
Stream class to YouTube or Twitch with OBS, and keep the stream as the recording. The guide →
Accounts & courses
Logins for instructors and TAs. A course shares its library, plans and room settings with its members, so a new iPad is just a sign-in. The planner files each lecture under a class (or makes a new one), and admins see every lecture by class, unfiled ones included.
A shared library
Upload decks, PDFs and media from a browser. The admin page manages themes, music playlists and the built-in tools too.
My FilesNew
Everything that's yours on the server (files, lectures, templates, recordings, rosters and attendance), each saying what you may do with it.
Kiosks & signage
Turn a lobby screen into signage. Provision it with one QR code, set plans on a weekly schedule, see when it last checked in, and revoke it remotely.
Simple to run
One-command install and updates with automatic rollback, nightly backups, a doctor
health check and an audit log.
Choose your setup
Free to start. Yours to own if you want more.
The pages are the same everywhere. The only choice is which relay carries their sealed messages, and the relay can never read them.
Free · no signup
Public MQTT broker
GitHub Pages hosts the pages and a free public broker carries the messages. This is the default, and the quickstart walks through it without a terminal.
- About 20 minutes, once
- No account beyond GitHub
- Every classroom feature
Free
Supabase Realtime
A managed broadcast channel on Supabase's free tier. No database tables, no server to maintain, and more dependable than a public broker.
- Two values to paste into Settings
- No server to maintain
- Every classroom feature
Low cost
Your own server
Podium's own Node.js server on a small VPS, with an install script, systemd, nginx and backups. Deploy guide.
- Polls, attendance, accounts and courses
- Shared library, My Files, session history
- Lecture replay and search, kiosks, recaps
| Feature | MQTT | Supabase | Own server |
|---|---|---|---|
| Slides, PDFs, documents, media, ink, zoom, layouts, timers, music, captions | ✓ | ✓ | ✓ |
| Document camera, sets, messages, watermark, session export | ✓ | ✓ | ✓ |
| Plan files, pairing, Simple Mode, Guest View links | ✓ | ✓ | ✓ |
| Audience polls, quizzes, Q&A, word clouds | – | – | ✓ |
| Accounts, courses, uploads, stored plans, templates | – | – | ✓ |
| Session history, lecture recaps, mic recording | – | – | ✓ |
| Lecture replay and search, screen video | – | – | ✓ |
| Attendance, rosters, entry and exit tickets | – | – | ✓ |
| Guest View typed codes, kiosk profiles, PowerPoint and Word conversion | – | – | ✓ |
Privacy & reliability
Built for campus Wi-Fi and a live audience
Classroom networks are shared and a lecture can't be restarted, so Podium assumes the network is watched and that it might drop.
🔒 Sealed in the browser
Every message is encrypted (AES-GCM) before it leaves the device. The relay routes by room name and sees only ciphertext.
PBKDF2 rounds turn your passphrase into the key, which makes guessing slow. Use three or four random words.
The pairing link keeps the passphrase after the #, the part of a URL browsers never send to a server.
No analytics, no tracking, no company holding your lecture material.
🛟 Keeps going when things go wrong
A service worker caches the pages, so loaded slides, ink and timers keep working if the campus network drops.
The display resumes the lecture after a crash or refresh, or starts black if you prefer.
Out-of-date copies are detected. A controller says which device is running old code and offers to reload it.
Over fifty unit suites and a five-part browser end-to-end suite run on every change, covering freeze safety, ink, audio math and encryption.
Stated plainly: a few things step outside the encryption, and all are opt-in. Audience polls and attendance check-ins go through your own server, because students' phones don't hold the room key. Session records and recordings are kept, readable, on your own server so they can be replayed and searched, and emailed attendance receipts go through the mail server you set up. Live captions in Chrome and Edge send audio to Google for recognition, while Safari recognizes speech on the device. The architecture guide explains each.
Keyboard shortcuts
For a clicker, a keyboard, or the lectern PC
Press ? on either page for the full, current list. Shortcuts never fire while you're typing in a field.
On the controller
- B FBlank or freeze the screen
- T CTAKE the cue live, or clear it
- ← → SpacePage through a deck, or play and pause media
- P ⇧PPhotograph the focused panel, or the whole screen
- W M RWhiteboard, music, run the selected timer
- [ ]Step through your tabs
- 1–5 ⌘ZPick an ink tool, undo a stroke
On the classroom display
- GGo live: fullscreen, sound, and keep the screen awake
- PShow or hide the pairing QR code
- FToggle fullscreen
- EEnd of class: back to the Go live screen
- SOpen Settings
- BBack to the Podium home page
- EscClose whatever is open
Documentation
Go as deep as you like
Start at the top. Most teachers never need to go past the first two.
🆕 What's new in 1.3
Attendance, lecture replay and search, documents, pinch to zoom, the deck editor and more, in one page.
For everyone🚀 Quickstart
Put Podium online for free in about twenty minutes, in plain English, with no terminal.
For every teacher🎨 Features & teaching guide
Every feature in detail, organized the same way as this page.
For every teacher📡 Streaming a lecture
OBS with YouTube or Twitch, from the classroom PC or from a Guest View link, and how it compares with the replay.
Anyone streaming class🩺 Troubleshooting
What the status messages mean, stale builds, and how to reset one device.
When something's off🖥️ Self-hosting
Accounts, courses, the library, session records, kiosks, and why each is built the way it is.
For IT and the curious📦 Deploying & operating
Install, update, back up, restore and check up on a server.
For whoever runs the box🏗️ Architecture & security
The no-framework design, the protocol, the relays, and the cryptography.
For developers♿ Accessibility audit
What was checked, what was fixed, and what is still open.
For accessibility staff🧪 Testing
The unit suites, the end-to-end suite, and how to run them.
For contributors🗺️ Audience participation design
How polls were designed, and why results wait for the presenter.
For the curious