Quarto
In-depth entryby Posit Software, PBC · CLI tool · also known as Quarto CLI
Open-source scientific publishing system from Posit that renders Markdown with executable Python, R, Julia or Observable code to HTML, PDF, Word, slides, websites and books via Pandoc
Overview
Quarto is an open-source scientific and technical publishing system developed by Posit and released under the MIT license. It is the multi-language successor to R Markdown: a .qmd document (or a Jupyter notebook) mixes Markdown prose with code cells that are executed by Jupyter (Python, Julia and other kernels), knitr (R), a native Julia engine or Observable JS, and the result is passed to Pandoc to produce HTML, PDF, Word, EPUB, reveal.js and PowerPoint presentations, dashboards, websites, blogs, books and journal-formatted manuscripts from a single source.
Projects group documents with shared configuration, so a website or book renders consistently and can be published to GitHub Pages, Netlify, Posit Connect or Quarto Pub with one command. Cross-references, citations through Pandoc citeproc with CSL styles, equations, callouts, tabsets, code folding, freeze and cache options for expensive computations, and an extension system for custom formats, shortcodes and filters cover most academic needs. Quarto is edited from VS Code, Positron, RStudio, JupyterLab or Neovim, and the CLI runs the same way on macOS, Linux and Windows, which makes it suitable for continuous-integration builds of reproducible reports.
Typical users are researchers and data scientists who want reproducible papers, lecture notes and course sites where figures and tables are regenerated from code. Quarto requires the relevant language runtime and, for PDF, a TeX distribution (it can install a minimal TinyTeX) or Typst, which it also supports as a PDF engine. Builds of large projects can be slow without caching, LaTeX errors still surface for PDF output, and some journal templates exist only as community extensions.
Capabilities
- Executable documents with Jupyter, knitr, Julia and Observable JS engines
- Output to HTML, PDF (LaTeX or Typst), Word, EPUB, reveal.js and PowerPoint
- Websites, blogs, books, dashboards and manuscripts as projects
- Cross-references, citations (CSL), equations and callouts
- Freeze and cache for expensive computations
- Extensions for formats, shortcodes and filters
- One-command publishing to GitHub Pages, Netlify, Posit Connect, Quarto Pub
- Visual Markdown editor in RStudio, Positron and VS Code
Typical workflows
- Reproducible working paper with regenerated figures and a journal template
- Course website with lecture slides rendered from the same sources
- Dashboard report rebuilt on a schedule in CI
- Technical book published to GitHub Pages
Strengths
- Language-agnostic: Python, R, Julia and JavaScript in one system
- MIT-licensed and backed by Posit
- Same CLI across platforms and CI
- Rich academic features through Pandoc
Limitations
- Requires language runtimes and a TeX distribution or Typst for PDF
- Large projects render slowly without caching
- PDF output still exposes LaTeX errors
- Some journal formats depend on community extensions
Prerequisites
- Quarto CLI
- Python, R or Julia runtime as needed
- TinyTeX/TeX Live or Typst for PDF
Who it is for
- Researchers writing reproducible papers
- Data scientists producing reports and dashboards
- Instructors building course sites
Alternatives & comparison
R Markdown is R-centric and remains supported, while Quarto generalizes the same knitr-plus-Pandoc idea to other languages. Jupyter notebooks hold code and output but lack Quarto's publishing formats; Pandoc alone converts documents without executing code. MkDocs targets software documentation sites rather than computational documents.
- marimo
Reactive Python notebook stored as a plain .py file that re-runs dependent cells automatically and doubles as a script or web app
Open sourceOpen source - MkDocs
Python static site generator for project documentation that builds a navigable site from Markdown files and a single YAML configuration
Open sourceOpen source - Observable
JavaScript data notebooks and the open-source Observable Framework static-site generator for data apps, from the maintainers of D3 and Plot
MixedFreemium - Pandoc
Universal document converter that translates between Markdown, LaTeX, HTML, DOCX, EPUB, Typst, Jupyter and dozens of other formats, with citeproc and Lua filters
Open sourceFree - Project Jupyter
Open-source computational notebook ecosystem: the .ipynb format, kernels for Python, R and Julia, JupyterLab and Notebook interfaces and JupyterHub
Open sourceOpen source - R Markdown
R package that turns Markdown documents with embedded R (and Python or SQL) chunks into HTML, PDF, Word, slides, books and dashboards through knitr and Pandoc
Open sourceFree - Sphinx
Python documentation generator using reStructuredText or MyST Markdown with cross-referencing, API autodoc and output to HTML, PDF via LaTeX, ePub and man pages
Open sourceOpen source - Typst
Markup-based typesetting system with an Apache-2.0 compiler written in Rust and a collaborative web app, positioned as a faster, simpler alternative to LaTeX
MixedFree
Sources & verification
Primary sources consulted for this record. Claims are tied to the fields each source supports; the automated link checker re-verifies every URL on a schedule.
- Licensequarto-cli COPYING.mdchecked Nov 1, 2026
https://github.com/quarto-dev/quarto-cli/blob/main/COPYING.md
Supports: license_spdx, source_model
- Official documentationchecked Nov 1, 2026
- Official sitechecked Nov 1, 2026
- Repositorychecked Nov 1, 2026
- Confidence
- High
- Reviewed
- Nov 1, 2026
- Links
- Verified · Nov 2, 2026
Spotted an error?
More in Academic writing & publishing
Overleaf
Overleaf (Digital Science) · LaTeX & typesetting
Collaborative online LaTeX editor with real-time co-editing, templates and reference-manager sync, available as a hosted service and an AGPL self-hosted edition
Zotero
Corporation for Digital Scholarship · Citation management
Free, open-source reference manager with browser connectors, word-processor plugins, a PDF reader, group libraries and optional paid file storage
Matplotlib
Matplotlib Development Team (NumFOCUS) · Data visualization
The foundational Python plotting library for static, publication-quality figures with full control over every element, exported to PDF, SVG, PNG and PGF