markdeck

演示文稿即代码 -- 编写酷炫的幻灯片,纯文本的,离线式的,协作式的。「presentations as code - author cool slide decks, text-only, offline-ready, collaborative」

Github stars Tracking Chart

markdeck -- 演示文稿即代码

编写酷炫的幻灯片,纯文本,离线式,协作式。

为什么?

将 markdown 转换为一个干净的 html5 幻灯片。

  • 酷炫的外观:基于经过实践检验的网络框架,如 reveal.js。
  • 不需要上链,无论是在创作时,还是在演示时。
  • 在演示过程中没有尴尬的时刻(没有 "我还在等待互联网,对不起!")。
  • 包含所有的电池:实时渲染器,pdf 输出,asciiart 转换器。
  • 纯文本,简单的语法:只需标记 down
  • 快速-简单的写作:自带编辑器!
  • 易于合作和再利用:纯文本,所以请自备 VCS。
  • 眼花缭乱:支持 unicode、emojis、fontawesome、asciiart、数学、图表、代码高亮、录制终端会话、......
  • 自定义 文档幻灯片
    可以看到幻灯片的源代码和结果,并排进行。

shiny 、revealjs impressjs 。

你也可以访问 shiny 登陆页面revealjs 展示区或、或者 impressjs 展示区

安装 markdeck,等等

你需要 bash、curl 和 docker-compose,然后运行以下命令:

curl -LO https://raw.githubusercontent.com/arnehilmann/markdeck/master/markdeck
chmod a+x markdeck
./markdeck pull

markdeck脚本可以存储在$PATH的文件夹中,这样就可以从文件系统的任何地方执行。

文档

......可以在 DOCUMENTATION.md 中找到。

如何从头开始

运行下面的命令来创建一个空的演示文稿(如果 markdeck 没有存储在 $PATH 中,则用 ./ 作为命令的前缀)。

markdeck scaffold

运行以下命令启动 markdeck:

markdeck

打开浏览器 http://localhost:8080。

编辑 slides.md,添加 assets/,查阅文档,......

这如何工作

markdeck 采用 markdown 格式的 slide-*.md 文件和 assets 子目录,并使用 pandoc 作为转换器和 reveal.js 作为演示框架,渲染一个 html5 slidedeck。

请看侧视图,了解 markdeck 的工作原理和外观,或者看看文档。

基于

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

已知问题

  • 自定义布局很难,但可以
  • 完美的像素布局几乎不可能
  • 查看:todos

类似项目

Overview

Name With Ownerarnehilmann/markdeck
Primary LanguageHTML
Program languageShell (Language Count: 9)
PlatformDocker, Linux, Mac
License:MIT License
Release Count25
Last Release Namev0.60.0 (Posted on 2022-04-29 22:34:18)
First Release Namev0.16 (Posted on 2017-12-15 11:31:24)
Created At2017-11-14 14:31:56
Pushed At2023-02-04 02:14:29
Last Commit At2021-07-19 13:55:39
Stargazers Count1.2k
Watchers Count22
Fork Count40
Commits Count734
Has Issues Enabled
Issues Count44
Issue Open Count9
Pull Requests Count10
Pull Requests Open Count1
Pull Requests Close Count3
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private

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, ...

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

To the top