I’ve been working on a new package called org-slideboard, which has developed out of org-show by John Kitchin, part of scimax, which in turn was based on Sacha Chua’s presentation code. I’m planning to submit it to MELPA in a few weeks. I wanted to share it here to get some early feedback, bug reports, and suggestions from fellow Org-mode users.
What is it?
org-slideboard shows an Org file as interactive slides directly inside Emacs. It is purpose-built for files written for Beamer export: Beamer columns, equations, tables, macros, and code blocks render properly while the content remains completely live and editable during the presentation.
(Tip: If you clone the repo, you can open demo.org and run M-x org-slideboard-start-slideshow to see a built-in presentation where each slide demonstrates the feature it describes!)
Key Features:
- Beamer Column Support & Fitted Images: Frames with children tagged as Beamer columns are shown with a title strip above one window per column. Plots and images are automatically drawn and scaled to fit the width and height of their window.
- Live Code Execution & REPL Integration: Source blocks can show code, results, or both using flexible split layouts (lr, rl, tb, bt). You can execute code live via C-c C-c or open code blocks right next to a running REPL (like ESS R or Python) to tweak and run code on the fly.
- Dynamic Table Alignment & Merged Cells: Tables automatically align to what is actually displayed on screen (accounting for proportional fonts, expanded macros, and equation images). It also introduces clean custom markers (<< and ^^) for cell-merging that exports cleanly to Beamer.
- LaTeX Equations Sized to Text: Math is previewed at a size relative to your text font, grows/shrinks dynamically with text scaling, and filters out incompatible Beamer preamble headers automatically.
- Step-by-Step Animations: Full support for Beamer overlays, list increments (<+->), and faded/highlighted steps (\setbeamercovered{transparent}).
- Clutter-Free Aesthetics: Automatically hides property drawers, keywords (#+NAME:, #+RESULTS:), non-exported blocks, and raw LaTeX lines during the show, while integrating cleanly with org-modern and variable-pitch-mode.
- Vector PDF Export: Apart from exporting as a beamer presentation, you could also easily save your presentation as an org-slideboard PDF (M-ESC p) page-by-page, matching your exact layout and steps. This way, you can have a pdf that looks similar to the org-slideboard presentation, and can be shared with participants who do not use emacs.
Installation:
Since it's not on MELPA yet, you can try it via use-package with :vc, straight.el, or manual installation:
Code snippet
;; With Emacs 30+ using package-vc via use-package:
(use-package org-slideboard
:vc (:url "https://github.com/vikasrawal/org-slideboard")
:commands org-slideboard-start-slideshow)
;; Or with straight.el:
(use-package org-slideboard
:straight (:host github :repo "vikasrawal/org-slideboard")
:commands org-slideboard-start-slideshow)
Links:
I hope emacs/org-mode users would find it useful. Feel free to open issues on GitHub or leave feedback in the comments!