Typst is a great way to make presentations but I was frustrated there’s no good way to present them with video, GIFs or speaker notes. So I made Presio: https://presio.xyz/
Present any PDF in the browser as two (or more) synced windows (controller with notes/timer + viewer for the projector).
Features
- Fully local (pdf never leaves your browser)
- Optionally sync online and let audience follow on their device
- Support for embedding GIFs, Youtube, Mp4, Vimeo and more (see code snippet below)
- Speaker notes embedded into pdf (see code example below)
- Timer
The presio Typst package attaches media and notes automatically:
#import "@preview/presio:0.2.0": media, speaker-notes
#speaker-notes[
Remember to mention the demo before moving on.
]
// Local file — wrap the path with Typst's path() type (attaches to pdf)
#media(path("figures/demo.gif"), width: 60%)
// YouTube / Vimeo are detected automatically
#media("https://www.youtube.com/watch?v=dQw4w9WgXcQ", width: 60%, aspect-ratio: 16/9)
Local and no login by default (PDF never leaves your browser), optionally sync live so the audience follows on their own devices. Works with plain Typst, Polylux, Touying or any other typst presentation library! Try presenting the example presentation.
Give it a try and let me know what you think :))
