react-client
react-client copied to clipboard
Idea: Slide improvements
Hey lads, since I'm working quite often with the slide mode I've got some ideas to discuss and propose:
Download compiled slides
Add a Presentation item to the download menu for offline (or wherever) usage, which outputs the compiled slides
- without the footer
- including assets like
- CSS
- JS
- image assets (or whatever you can upload)
- as an archive
Editor: Slide options in the toolbar
Add a slide option button to the editor toolbar, opening a dialog to dis-/enable the type: slide
and other options in the front YAML.
If enabled, show buttons for individual slides in the toolbar, like uploading a background image, adding a fragment, new slide (---
or ----
) etc.
Vertical alignment options
Implement an option to set the vertical alignment of a slide, useful for background images and title slides. Example where it would be useful to align the content:
I think this would be a bit too much, since it is possible through HTML & CSS and afaik not part of reveal.js.
(IMHO one issue for this epic is fine, as long as we don't have implementation plans or lengthy discussions.) So, please share your thoughts on this!
Oh I would love that download button! If anyone would like to take a stab at it: You can take a look at our export code, it already does some of these things and could be the basis for such a feature. In particular these two parts pack a zipfile:
https://github.com/codimd/server/blob/5951dd1805d8c74ac1da355baa89343838f38305/lib/web/userRouter.js#L73-L82
https://github.com/codimd/server/blob/5951dd1805d8c74ac1da355baa89343838f38305/lib/web/userRouter.js#L93-L114
The parts in between are "checking if logged in" (which could be skipped) and "list all notes" which does not apply in this case).
In addition to the slide improvement that you're proposing, do you think it would make sense to offer an easy way to style the slides with a custom reveal.js style theme?
It could be a separate file passed as a parameter at startup to complete the default css style.
This issue has been split up into several other issues.