Website | Source | Demos
Written in Haskell.
Converts to/from more formats than most people realize exist:
(← = conversion from; → = conversion to; ↔︎ = conversion from and to)
Lightweight markup formats:
- ↔︎ Markdown (including CommonMark and GitHub-flavored Markdown)
- ↔︎ reStructuredText
- ↔︎ AsciiDoc
- ↔︎ Emacs Org-Mode
- ↔︎ Emacs Muse
- ↔︎ Textile
- → Markua
- ← txt2tags
- ↔︎ djot
- → BBCode
HTML formats
- ↔︎ (X)HTML 4
- ↔︎ HTML5
- → Chunked HTML
Ebooks
- ↔︎ EPUB version 2 or 3
- ↔︎ FictionBook2
Documentation formats
- → GNU TexInfo
- ← pod
- ↔︎ Haddock markup
- → Vimdoc
Roff formats
- ↔︎ roff man
- → roff ms
- ← mdoc
TeX formats
XML formats
- ↔︎ DocBook version 4 or 5
- ↔︎ JATS
- ← BITS
- → TEI Simple
- → OpenDocument XML
Outline formats
Bibliography formats
- ↔︎ BibTeX
- ↔︎ BibLaTeX
- ↔︎ CSL JSON
- ↔︎ CSL YAML
- ← RIS
- ← EndNote XML
Word processor formats
- ↔︎ Microsoft Word docx
- ↔︎ Rich Text Format RTF
- ↔︎ OpenOffice/LibreOffice ODT
Interactive notebook formats
- ↔︎ Jupyter notebook (ipynb)
Page layout formats
Wiki markup formats
- ↔︎ MediaWiki markup
- ↔︎ DokuWiki markup
- ← TikiWiki markup
- ← TWiki markup
- ← Vimwiki markup
- → XWiki markup
- → ZimWiki markup
- ↔︎ Jira wiki markup
- ← Creole
Slide show formats
- → LaTeX Beamer
- ↔︎ Microsoft PowerPoint
- → Slidy
- → reveal.js
- → Slideous
- → S5
- → DZSlides
Data formats
- ← CSV tables
- ← TSV tables
- ← Microsoft Excel spreadsheets
Terminal output
Serialization formats
- ↔︎ Haskell AST
- ↔︎ JSON representation of AST
- ↔︎ XML representation of AST
Custom formats
- ↔︎ custom readers and writers can be written in Lua
PDF
- → via pdflatex, lualatex, xelatex, latexmk, tectonic, wkhtmltopdf, weasyprint, prince, pagedjs-cli, context, or pdfroff.
Installation
- macOS:
brew install pandoc; integrations may be useful too: brew install librsvg python homebrew/cask/basictex
- Docker:
docker run --rm --volume "pwd:/data" --userid -u:id -gpandoc/latex README.md -o README.pdf converts README.md to README.pdf
Build Actions
Pandoc can be run through GitHub Actions. For some examples, see https://github.com/pandoc/pandoc-action-example.
Pandoc can be run through GitLab CI/CD. For some examples, see https://gitlab.com/pandoc/pandoc-ci-example.
Tags:
tool
documentation
writing
Last modified 06 April 2026