Gentle reminder of the publishing workflow
The publishing workflow is the process in which external resources are prepared and collated together with the help of an authoring tool and subsequently rendered with a formatting tool to generate a publishable output that can be delivered in various forms. This is visualised by the following figure.
An example of a publishing workflow is the following. A research group may carry out an investigation which ends up with (1) data, figures, analyses, and results, those resources are put together with an (2) authoring tool like Overleaf which produces an (3) organised hierarchy of files and text that includes formatting information, then using a (4) formatting tool like pdfLaTeX all the artefacts are combined into a (5) pdf document that can be (6a) printed as a stand-alone document, or (6b) included into the proceedings of a conference.
Publishing paradigms
The creation of research or academic material usually involves the production of slides, documents, posters and other output formats from the same material. There are different paradigms to create publishing material:
- Single-In-Single-Out tools: Specialise in generating one type of output.
- E.g. text documents with Microsoft Word, Libre Office Writer, LaTeX; slide decks with Microsoft PowerPoint, LibreOffice Impress, LaTeX Beamer, Reveal.js, or Google Slides; and posters with Microsoft Publisher, Google Slides, LaTeX, etc.
- Single-In-Multi-Out tools: Can generate multiple types of publication formats from a joint set of input artefacts.
- Multi-In-Multi-Out tools: Can generate multiple types of publication formats by composing input artefacts from different locations.
Quarto is a formatting tool
Formatting tools take input artefacts produced by authoring tools and produce publishable formatted output. While many of the authoring tools discussed in the previous section are well-known, there have been many recent developments in formatting tools that deserve to be better known in the academic community as they take opportunities for publishing training material to the next level. In the previous section we described the two paradigms (SISO) and (SIMO). In this section we describe some formatting tools that can be used for the SIMO paradigm.
Quarto as a Single-In-Multi-Out
More recent publishing systems allow the generation of multiple types of publication formats from a joint set of input artefacts. We refer to this paradigm as Single-In-Multi-Out (SIMO). This paradigm offers various benefits, among them: - keeping the artefacts in a single, well-defined location which facilitates consistency, management and findability; - keeping a unique source of history changes and versions which is useful for auditing and transparency; and - not duplicating artefacts that are not changed between different publishing systems.
Nowadays, the SIMO type of formatting tool is becoming more common, and we focus on the state-of-the-art formatting tools that fall into this category in this roadmap. The roadmap document itself is an example of one particular tool (Jupyter Book
), while the rest of the document and use cases also include examples built with Quarto
. A description of these and other publishing tools is provided with more detail in the next section .
Installation and usage
- Get started documentation: quarto.org/docs/get-started/
- Open-source repository in GitHub: Quarto-cli
- Create a project with
quarto create project
- Type: default, website, blog, manuscript, book, confluence
- Build project with
quarto render
- Preview with
quarto preview
(it autobuilds and updates when changes in the source files are detected).
Then, what is Quarto?
Quarto is an open-source publishing system with the objective of facilitating the creation of scientific content. Quarto is sponsored by Posit, and follows the development of the R Markdown publishing system extending the focus from the programming language R to Python, Julia and Observable. It supports Jupyter notebooks, markdown and their own extension Quarto
markdown. The conversion to different output formats is done with pandoc, which is able to produce presentations (Reveal.js), dashboards, websites, blogs, books, PDFs, Microsoft Word, ePub and more. Quarto is integrated into multiple authoring environments like Microsoft Visual Studio, Jupyter Lab, Rstudio, and Atlassian Confluence among others.
Key points
- Quarto:
Quarto
supports dynamic content with Python, R, Julia and Observable- programming languages.
Quarto
uses pandoc to convert the input artefacts to its output.Quarto
supports plain text markdown, Jupyter notebooks and an augmented- markdown,
- Integration with Posit Connect (former RMarkdown), Atlassian Confluence, Visual Studio,
- Built with
quarto render
- Has a preview mode
quarto preview
which autobuilds and updates when changes in the source files are detected.