WARNING: This project is discontinued.
A replacement has been started with https://github.com/jceb/slidesdown.
mdshow
Turn markdown files into beautiful presentations quickly.
mdshow is built to quickly turn ideas into beautiful presentations.
The tool of choice for capturing ideas is the text-based Markdown format. The heavy lifting of making text beautiful is left to reveal.js, a popular web presentation framework. mdshow does the work in between of turning text into a presentation.
- Introduction video to mdshow
- Example HTML presentation
- [Example PDF](https://github.com/jceb/mdshow/blob…
WARNING: This project is discontinued.
A replacement has been started with https://github.com/jceb/slidesdown.
mdshow
Turn markdown files into beautiful presentations quickly.
mdshow is built to quickly turn ideas into beautiful presentations.
The tool of choice for capturing ideas is the text-based Markdown format. The heavy lifting of making text beautiful is left to reveal.js, a popular web presentation framework. mdshow does the work in between of turning text into a presentation.
Table of Contents
Features
- Built with reveal.js 4.0 and pandoc 2.9
Focus
- Minimally invasive. All data is kept in
slides.md,assets/, and a temporary.build/folder - Markdown as the sole markup to focus on
Enterprise
- Custom themes and reuse of themes across all presentations
- Default settings across all presentations
- Custom settings per presentation
- Live-reload of changes
- PDF conversion
Setup
- Scaffolding for a quick start (run
mdshow scaffoldto create ) - Auto-generated title slide
- Usable default settings
Presentation
- Font Awesome integration
- chart.js integration
- Multiple columns per slide
- Syntax highlighting for source code
- Incremental display of bullet points and other fragments
- Zoom into slide (press
<Alt-Left Mouse Button>or<Ctrl-Left Mouse Button>to zoom) - Separate speaker notes view (press
<s>to show) - Slide overview and navigation (press
<Esc>to enter overview and<Esc>to show selected slide)
Background
I’ve been using various markup formats like org-mode, asciidoc and markdown extensively and for professional purposes, e.g. writing a thesis, publishing documentation or keeping notes. However, for presentations I usually revert back to MS PowerPoint and Libreoffice Impress although web browsers are obviously way better at presenting content!
While PowerPoint & Co. get the job done, plain text is so much faster and more usable to me. For example, I can keep it in a repository to track revisions + use all the git infrastructure that exists around sharing content.
While plain text is faster, I had a hard time finding tools that would make it easy for me to concentrate on creating content. Furthermore, the speed of tools is very important to me. On the side of functionality I value theming, esp. across multiple presentations as well as no clutter in my presentation directory.
I took lots of inspiration from markdeck that I’ve been using successfully for a few years. I like the full-featured approach of markdeck and aim to bring many of its features to mdshow following an opinionated path.
Install
Prerequisites
autoconfautomakecurlg++gccmakepandoc, suggest version 2.9.xunzip
Installation
Download the program:
curl -LO https://raw.githubusercontent.com/jceb/mdshow/master/mdshow
Copy the mdshow program to a directory in $PATH and make it executable:
chmod a+x mdshow
Test and download dependencies:
mdshow setup
Usage
Create a new presentation in a new directory:
mdshow scaffold
The command will create a slides.md file and an assets directory. Place all assets like pictures in the assets directory. The content of the presentation lives in slides.md.
Display the presentation in a browser with live-reload:
mdshow serve
If you want to use a different file name pass it to mdshow via the SLIDES parameter:
mdshow serve SLIDES=custom.md
Convert the presentation to a PDF file (make sure mdshow serve is running before executing the following command):
mdshow pdf
Convert the presentation to a single, self-contained HTML file (make sure mdshow serve is running before executing the following command):
ATTENTION: this command fails to include images that are added to a slide via data-background-image attribute.
mdshow html
More commands and information:
mdshow help
Maintainers
Contributing
PRs accepted.
Small note: If editing the README, please conform to the standard-readme specification.
License
Apache-2.0 2020 Jan Christoph Ebersbach