Skip to content

slides

A terminal presentation tool that turns a Markdown file into slides you present without leaving the terminal.

Stars
11.7k
Forks
319
Licence
MIT
Language
Go
Last update
4 months ago
Type
App

What it is

Slides is a command-line program written in Go that displays a Markdown file as a presentation inside your terminal. You separate slides with horizontal rules and move between them with keyboard keys. It can also run code blocks in a slide, pre-process diagrams through external commands, and serve a presentation over SSH.

  • Write a talk as a Markdown file and present it with slides presentation.md
  • Run a code example inside a slide by pressing ctrl+e and see its output on the slide
  • Draw a diagram by piping text through a command such as graph-easy in a pre-processed code block
  • Host a presentation with slides serve and let viewers connect over ssh

Great for

  • Developers who already live in the terminal and want to present technical material
  • People who prefer writing slides as plain Markdown files
  • Presenters who want to show a talk over SSH to viewers without installing the tool
  • Anyone who wants live reload while editing a slide file

Not ideal for

  • Presenters who need a graphical editor, themes and image-heavy layouts, since the README describes only terminal rendering and a glamour theme option
  • Audiences expecting a projector-friendly visual deck with embedded video or animations, because the output is text in a terminal
Step-by-step guide: how to use slidesInstall, first run, examples, tips and FAQs

How to get it

  1. 1

    Install with a package manager

    You'll need: Homebrew, Arch AUR helper, Nix, snapd, or Go toolchain, depending on install route

    macOS (Homebrew)

    brew install slides

    Go install

    go install github.com/maaslalani/slides@latest
  2. 2

    Run it

    • Install slides using one of the commands above or download a binary from the releases page
    • Create a Markdown file and separate slides with a line containing ---
    • Run slides presentation.md in your terminal
    • Use space or the right arrow to move forward and p or the left arrow to move back
  3. 3

    Get the most out of it

    • Add a YAML block at the top of the file to set theme, author, date and paging
    • Press / to search slides with a regular expression, and ctrl+n to jump to the next match
    • Use ssh with slides serve [file] so viewers can connect without installing slides
    • Use the ~~~ pre-processing block to generate diagrams via external commands, after chmod +x on the file

Downloads

Strengths

  • Slides are plain Markdown files that work with any text editor and version control
  • Live reload updates the presentation as the file changes
  • Runs anywhere a terminal and, for SSH viewing, an ssh client are available

Trade-offs

  • Output is limited to what a terminal can show, so it is not suited to visual-heavy decks
  • Pre-processing and code execution run commands from the file, so the README requires execute permissions as a safety measure and users should review files before running them

How it compares

ProjectStarsTypeLevelUpdatedBest for
slides (this)11.7kAppbeginner4 months agoDevelopers who already live in the terminal and want to present technical material
slidev49.3kDev toolbeginner14 days agoDevelopers who want to present code, technical talks, or architecture diagrams
marp12.7kOtherbeginner3 months agoPeople who prefer writing slides as Markdown text rather than in a visual editor
mdx-deck11.5kDev toolintermediate3.8 years agoDevelopers who already write React and want to present technical material
nodeppt10.3kDev toolintermediate5.8 years agoDevelopers who prefer writing slides in Markdown over a visual editor
ppt-master72.4kAI model / agentintermediate7 days agoPeople who want an editable starting deck from existing documents rather than a filled-in template

Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.