Skip to content

presentations as code - author cool slide decks, text-only, offline-ready, collaborative

License

Notifications You must be signed in to change notification settings

arnehilmann/markdeck

Folders and files

NameName
Last commit message
Last commit date

Latest commit

author
Arne Hilmann
Jul 14, 2022
f8ea0b9 · Jul 14, 2022
Apr 29, 2022
Oct 5, 2019
Apr 28, 2022
Jul 26, 2021
Apr 29, 2022
Jul 14, 2022
Sep 20, 2018
May 12, 2021
Jul 6, 2022
Oct 1, 2020
May 11, 2022
May 11, 2022
Jan 4, 2019
Oct 1, 2020
Jan 4, 2019
Jul 12, 2022
Apr 29, 2022
Apr 29, 2022
May 11, 2022
Mar 9, 2021
Jul 14, 2022
Apr 28, 2022
May 16, 2021

Repository files navigation

markdeck - presentations as code

author cool slide decks, text-only, offline-ready, collaborative

Donate

why?

  • converts markdown to a clean html5 slide deck
  • cool looking: based on battle-proven web frameworks, like reveal.js
  • no uplink required, neither when authoring, nor presenting:
    no awkward moments during presentation (no "I am still waiting for the Internet, sorry!")
  • all batteries included: live renderer, pdf output, asciiart-converter
  • text-only, easy syntax: just markdown
  • fast-n-easy to write: bring your own editor!
  • easy to collaborate-n-reuse: text-only, so bring your own VCS
  • eye-candy: supports unicode, emojis, fontawesome, asciiart, math, charts, code highlighting, recorded terminal sessions, ...
  • self-documenting documentation slides:
    see the slide source and the result, side-by-side

You can also visit the shiny landing page, the revealjs showcase, or the impressjs showcase.

tldr

Choose the right binary to download:

# MacOS (Intel)
curl -Lo markdeck https://github.com/arnehilmann/markdeck/releases/download/v0.60.0/markdeck.x86_64-apple-darwin
# Linux
curl -Lo markdeck https://github.com/arnehilmann/markdeck/releases/download/v0.60.0/markdeck.x86_64-unknown-linux-musl
chmod a+rx ./markdeck
./markdeck init my-slides
cd my-slides
../markdeck
open http://localhost:8080/
open http://localhost:8080/admin.html

# edit slides.md, add assets/*, examine example deck, read documentation, create ascii-art, ...

optional components

Renderer Needed Component Installation on MacOS
render_ditaa, render_plantuml java runtime brew install java
render_dot graphviz brew install graphviz
render_vegalite vega-lite brew install npm; npm install vega vega-cli vega-lite
render_qr qrencode brew install qrencode
render_svgbob svgbob brew install svgbob
render_a2s, render_a2sketch docker docker run -d -p 22753:22753 arne/a2sketch:0.15

tldr, the old way

also see the old README.md for v0.54.

mkdir -p my-slides/deck && cd my-slides
echo -e '# Hello World!\n\n# Second Slide...' > slides.md
curl -LO https://raw.githubusercontent.com/arnehilmann/markdeck/main/docker-compose.yaml
docker-compose up
open http://localhost:8080/
open http://localhost:8080/admin.html

# edit slides.md, add assets/*, examine example deck, read documentation, create ascii-art, ...

links

how does this work

markdeck takes slide-*.md files in markdown format and the assets subdir and renders a html5 slidedeck, using pandoc as converter and reveal.js as the presenter framework.

see the side-by-side view, to get an idea how markdeck works and looks like, or have a look at the documentation.

based on

markdown, pandoc, reveal.js, plantuml, ditaamini, asciitosvg, graphviz, asciinema, decktape, vega-lite, mathjax-pandoc-filter, and font-awesome.

known issues

  • custom layout hard, but possible
  • pixel-perfect layout nearly impossible
  • see the todos

similar projects