Pandoc is a Haskell library for converting from one markup format to another, and a command-line tool that uses this library. It can read markdown and (subsets of) reStructuredText, HTML, and LaTeX, and it can write markdown, reStructuredText, HTML, LaTeX, DocBook, OpenDocument XML, RTF, ODT, GNU Texinfo, MediaWiki markup, and S5 HTML slide shows. Pandoc extends standard markdown syntax with footnotes, embedded LaTeX, and more. A compatibility mode is provided for those who need a drop-in replacement for Markdown.pl. Included wrapper scripts make it easy to convert markdown to PDFs and Web pages to markdown documents. It has a modular design where the addition of a new input or output format requires only the addition of a reader or writer module.