finds.dev← search

// the find

tjdevries/present.nvim

★ 220 · Lua · updated Jan 2025

present.nvim turns a markdown file into a slide deck you present from inside Neovim, splitting sections into slides on a configurable delimiter and letting you execute fenced code blocks live during the talk. It's for developers who already live in Neovim and want to give code-heavy talks without leaving the editor or fighting a slide tool like reveal.js.

The core idea is good and rare: running code blocks live in front of an audience instead of switching to a terminal is exactly the kind of thing a text editor is well positioned to do. Scope is tight — one lua/present.lua file, one plugin/load_present.lua loader, easy to read start to finish in a sitting. It has a CI workflow and an actual test file (parse_slides_spec.lua) for the slide-parsing logic, which is more than most 200-star Neovim plugins bother with.

The README documents almost nothing about configuration — 'Check source for options :)' is not documentation, and the executors option (which controls what runs arbitrary code from the file you open) isn't described at all, including whether there's any sandboxing. For a plugin whose headline feature is executing code blocks from a markdown file, that's a real gap: open someone else's slide deck and you're running their code blocks with your permissions. No screenshots or gif for a visual presentation tool is also a miss. Last push was January 2025, so it's gone quiet for a while — fine if it already does what you need, but don't expect fixes.

View on GitHub →

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →