This whole presentation is a Datastar application
On keypress hooks handle navigation between slides
data-on-keydown__window="
(evt.key == 'ArrowLeft' && previous.click())
|| (evt.key == 'ArrowRight' && next.click())
"
Slides are simple HTML files
A Datastar request is started when a page is opened
data-on-load="@get('/watch/realtime.html')"
It sets up a watcher on the file and updates the client in real-time :)
Easy to add features like in-browser website editing