🌐 Website · 📚 Documentation
Marp-compatible slide decks in pure Go (CGO=0), with Go templates and slide kinds.
slides reads the Markdown that Marp reads — ---
between slides, global, local and spot directives, ![bg] backgrounds,
fragmented lists, header, footer and pagination, speaker notes,
<style scoped>, the default, gaia and uncover themes — and adds two things
Marp does not have:
- Go
text/templateinterpolation in the deck:{{ .title }}from the front matter'sdata:, a{{ range }}that generates slides,{{ page }}/{{ total }},include. Code blocks are left alone by default, so a slide about templates can show one. - Slide kinds:
kind: titlenames a preset of local directives — header, footer, pagination, class, background — defined in the front matter'skinds:or in a shared kinds file, withtitle,section,contentandblankbuilt in. A slide says what it is instead of repeating how it looks.
---
marp: true
paginate: true
data:
talk: Pure Go slides
topics: [Why, How, Next]
---
<!-- _kind: title -->
# {{ .talk }}
---
# Agenda
{{ range .topics }}- {{ . }}
{{ end }}Status: v0.6.0 is released. HTML,
slides expand, PNG/JPEG, a vector PDF, editable PPTX and ODP, math, code highlighting, emoji, HCL, watch and serve — no headless Chrome, unlike marp-cli. Install withgo install github.com/go-slides/slides/cmd/slides@latest; see the documentation.
| Repo | What it is |
|---|---|
| slides | the slides command and its library: the Marp-compatible parser and renderer, template interpolation and slide kinds |
| docs | the documentation site (Hugo + Hextra), served at /docs/ |
| go-slides.github.io | the landing page (Hugo) |
| vscode | the VS Code extension: preview, problems, completion and export (installed from the .vsix of its GitHub release; not on the Marketplace yet) |
| brand | logo, icons and social images |
go-slides belongs to the document family of the go-* ecosystem, with go-richdoc, go-ooxml, go-tex and go-docutils.
