I used https://revealjs.com/ in the past for this successfully. I have very good experience with that from circa 10 years ago.
I found Presenterm [1] to be optimal for me. Simple and works in the terminal, yet powerful to export to PDF and HTML. It supports Mermaid and images. I'm also collecting a list [2] with other Markdown-first presentation tools, and according to the git stars, reveal.js seems to be the most popular. Tough for me, it was too heavy.
[1] https://github.com/mfontanini/presenterm
[2] https://www.ssp.sh/brain/markdown-presentations-or-slides/
There's also marp
I’m sure this is great on desktop but lack of mobile support today is kindof a bummer. It doesn’t even degrade gracefully.
self plug: one of my articles also has its own slide infrastructure (exposed to the reader as well!): https://maxbo.me/a-html-file-is-all-you-need.html#:~:text=Sl...
I love it, but it was very disorienting to use `j` to move forward and `k` to move backward.
Fastmail uses these too, as does vim.
jk
lol yeah... "tell me you are lefty without telling me you are lefty"
Those are Vim bindings. The J key rests right under your index finger (and it’s easy to find it thanks to the nudge on your key), which enables you to spend little to no energy to “scroll down”; the K key is for scrolling up.
A vimmer*
or just an evil emacs user
not all emacs users are evil!
I find the notes mode confusing. You can't tell if you're viewing a note or a slide.
Why would you use it? In PowerPoint the point of notes is to have an aside view for the presenter for extra info. Here all is revealed to the viewer.
You could share a screen with the slides and have the notes visible to yourself. Also the notes mode has a dashed border around it.
This is just a simple demo but it's really cool how simple and easy it is in practice.
Open the page in two windows, with one that has note mode enabled
(i = slide.nextElementSibling)?.className == "slidenote" ? i : slide
]),
An alternative approach: slide.querySelector(":scope+.slidenote") ?? slide
(|| would work just as well as ??, but ?? feels more appropriate.)one thing that I immediately noticed is that this site has no mobile support at all.
that's why I will link this presentation I made, in just a few hours, for a school project. it has mobile support, automatic fullscreen, and is still lightweight. unfortunately, I lost the code for the engine alone, so I only have the "exported product".
This is really cute!
I have a special spot in my heart for tools that do a good job of explaining themselves using their own outputs.
I wonder how hard it would be to add the cute old PowerPoint style transitions using CSS
You can wrap the navigation event in document.startViewTransition() and get something basic out of the box:
Not too hard depending on the level of jankiness you're willing to endure.
Screen capture API > full screen canvas element > css animated clip mask and opacity
Haha, I see people talking about slides everywhere, from specific moment in my life... that's when I started coding slidepicker.com!
Anyway, nice work! I created something similar for our product (a list of divs that switch visibility based on keyboard input).
I use HTML for my presentations and publish them online mentioning the URL at the top, such that people can open them on their device, which is often a smart phone. I take that into account for the interactive parts of the presentation.
Nice, I hv been working on engine that renders pptx (without compromising original styles) in web browsers...
Have you check https://pitch.com/ ?
Could add clicker support (which I have done previously). Note however that clickers vary between Up/Down and PgUp/PgDown. Enabling the former was potentially annoying if you like to use the arrow keys to scroll, so I made that configurable. Alternatively you configure mappings per device outside the browser.
I find it infuriating when clickers say they send page up/down but actually send regular up/down key events.
Maybe it would be easy to add the shortcuts g - jump to first slide G - jump to last slide