Type: Framework
RFC: RFC 166
Current implementations: Neo
Slide Present is a simple and opinionated framework for making presentations. It represents the Dataflow-centric authoring of Divooka, and is ideal for creating shareable slide decks organized as graphs of assets and subgraphs. When displayed, it produces result similar to a typical PowerPoint presentation.
Fig. ?.? Slide Present Interface
The goal of this framework is to make it functional and allow creating presentations quickly and effectively.
As of version 0.2, the cosmetics aspects and configuration options are still a work-in-progress. Also notice that depending on the implementation you may see slightly different look. This is intentional, so you should generally not depend on it for exact looks; However as we move towards greater consolidation between implementations, we target a more uniform and predictable look.
When using Slide Present, the entire presentation is constructed as a single Divooka graph and it supports advanced features like embedding a Divooka graph directly in the presentation. Additional benefits include runtime constructed media contents (e.g. images).
Slide Present assumes a flat asset layout and uses explicit file references, this way when modifying the source file, one can immediately see the impact on the final presentation. Below screenshot shows a folder containing a presentation that shows a few images and has audio and video.
Fig. ?.? Slide Present Assets Layout (in File Explorer)
If you are satisfied with a presentation, you can also export it into Markdown, PDF or PowerPoint formats - this requires corresponding extensions. However, notice only supported contents will be visible in those formats. E.g. Videos won't show up properly in text formats.
A presentation consists of the following components, each representing distinct objects for the presentation:
Presentation: The top level representation of the entire presentation.
Slide Section: A grouping of slides. Used as organization unit.
Slide: Slides contains contents and defines layout for each presentation screen.
In the Slide Present framework, slides have predefined layouts, which makes constructing "typical" slides easier. However, you have full control and can completely customize the look of a slide as well.
Those are the few slide layouts that represent the most common scenarios:
Hero: Can be used to make titles, headers, or showing full screen images and videos.
One Body (optionally with header): Can be used to make typical single body content presentations.
Two Body (optionally with headers): Can be used to make slides containing two columns.
Multi-Body: Can be used to make slides containing multiple columns.
Below shows the construction of specific slides and along an example screenshot.
Fig. ?.? Hero - Title Slide Construction Screenshot
Fig. ?.? Hero - Title Slide
Fig. ?.? Hero - Fullscreen Media Construction Screenshot
Fig. ?.? Hero - Fullscreen Media
Fig. ?.? One Body - Slide Construction Screenshot
Fig. ?.? One Body
Fig. ?.? Two Body - Top Down Layout - Slide Construction Screenshot
Fig. ?.? Two Body - Top Down Layout
Fig. ?.? Multi Body - Slide Construction Screenshot
Fig. ?.? Multi Body
Because slides are just containers of contents, the lifetime of objects can be shared throughout a presentation during runtime.
Below example illustrates sharing a graph canvas between two slides:
Fig ?.?. Use The Same Graph Instance as Content for Both Slides
This is useful when you want to retain the changes made on the first slide and continue the discussion on the second slide. AN illustrative scenario is like below:
Fig. ?.?. Showing Two Slides: The left slide talks about basic construction of the program; The second slide continue the discussion on how to extend/use the program.
To completely customize a slide, you need to use components from (Simply App) and make use of adaptive layout containers and controls....
You can also use GLSL for background and image shading...
You may also make use of Glaze for embedded interactive media or background or the entire slide screen in supoprted front-end implemented Slide Presents....
Slide Present is intended to serve as a foundational library and its features will be greatly expanded in the full release. We also expect a dedicated GUI designer in the future.
Slide Present lets you build a complete presentation as a single Divooka graph. You define a top-level Presentation, group slides into Slide Sections, and customize each Slide’s layout with built-in presets (Hero, One Body, Two Body, Multi-Body). Since assets (images, audio, video) live alongside your presentation source files, changes appear immediately when you run the graph. Slide Present also supports embedding Divooka subgraphs into slides, so you can include interactive visual demos or dynamically generated media. When you’re ready to share, you can export your presentation to Markdown, PDF, or PowerPoint - keeping in mind that only supported content (text, static images) will translate cleanly into those formats.