Hello everyone!
I am happy to share with you a new component called Streamlit Reveal Slides!
With this component, you can create reveal.js HTML presentations with markdown or markup. The generated presentation is then embedded into your Streamlit app for full-featured use. You can run the presentation right from inside your app in embedded mode or fullscreen mode. This component is bidirectional allowing you to control the presentation via your app but also allowing you to have the presentation control your app.


Installation:
pip install streamlit-reveal-slides
Source:
Extras:
5 Likes
Hi again,
I’ve improved a few things, the most important of which is that I added a display_only
argument to slides
function that kills the bidirectionality and prevents any communication from the slides to streamlit via Streamlit.setComponentValue
. This is useful if you dont need presentation status information and you want to prevent unnecessary app reruns (every time the component sends info back to Streamlit, the app is rerun).
Also, the default configuration for presentations has been changed to fit more with regular Streamlit app layout. The hope is that, there is less of a need to have to mess around with many of the config parameters. You can get something usable with just:
import reveal_slides as rs
rs.slides(markdown)
1 Like
Hey everyone,
I am building a new custom component based on this component and in the process, I found the need to add some 3rd party extensions/plugins to it. I think right now is a good time to ask if any 3rd party plugins are of interest to anyone so I can add them alongside the ones I am already adding.
You can find a list of the plugins here: Plugins, Tools and Hardware · hakimel/reveal.js Wiki · GitHub
1 Like
Hi @bouzidanas
Aside from ChatGeoParty app, the streamlit-reveal-slides
component is a really amazing tool for creating presentation slides. Recently, I created a simple presentation app that embeds a Google Slide via iframe and honestly the streamlit-reveal-slides
component is more visually appealing, two thumbs up 

Best regards,
Chanin
1 Like
@dataprofessor
Wow, that presentation app shows a nice and clean way to embed externally created presentations! Reminds me of the popular method for displaying PDFs in Streamlit apps. I think your code is more immediately useful as people probably already have slides they created elsewhere like for work or academia and might want to include in their tutorial streamlit apps and such.
Great app and video!
Btw, I’ve watched some of your videos before. You are great at presenting and teaching!
1 Like
Thanks @bouzidanas for the kind words, much appreciated 
1 Like