A look at Quarto…
A nice (newish) option for data notebooks and technical publishing.
DRAFT
Summary
Announced a year ago, Quarto is a pretty tidy publishing system and the evolution of R Markdown. Billed as “an open-source scientific and technical publishing system”, Quarto allows authors to write in Pandoc markdown and publish to multiple document formats. Further, it’s not just for R!
I’ve been transitioning my personal notebooks to Quarto and have found the paradigm shift to a publishing system matches my workflow pretty nicely. So much so, that I am trying it out here for authoring and publishing as static website.
Out-of-the-box support for creating data notebooks, dynamic content and diagrams mean very little setup for most use cases. Another really nice aspect is support for multiple authoring tools including R Studio, VS Code, Neovim or any text editor via the CLI.
So far, Quarto is really speaking to my polyglot needs. And where it does not, custom extensions offer a path to further tailor the experience and rendering outputs.
Overview
Tools
I’ve not yet found the one tool to rule them all (pretty sure it doesn’t exist). Quarto’s multi-tool support let’s me choose based on what helps me best to focus or in the context of the type of content.
I’ve had good experiences so far in the following tools:
- CLI
- Neovim
- VS Code
- R Studio
For this site, I’ve mostly been using VS Code or the CLI. For my various management data workbooks I’ve been using R Studio.
Computations
Tools
Outputs & Rendering
Documents
Presentations
Websites
Books
Interactivity
Publishing
Web::Blog
Publishing manually or via Github Actions for a PR-based workflow is pretty simple.
Projects
Wish list
Things to find how to do or customize later.
- Metadata
- Custom metadata display in articles
status
I’d like to be able to create status metadata that can be displayed on page
- Custom metadata display in articles
- Custom templates and starters
- Bootstrap is a very good default, but I’d like to have more options to customize
- Current custom theming still has bootstrap to override
- Bootstrap template bugs
- Search icon / menu placement, menu open jitter
- CLI command to easily create new posts or pages
- Code execution or playgrounds, more immediate wishes are for
- JavaScript
- Typescript
- Rust, Wasm
- Web graphics (or codepen embeds?)
- Global dictionary/constants for categories and keywords
- VSCode markdown formatter (break at char limits or other linting)
Errata
- Quarto litmus test to try syntax and features
Resources
- https://quarto.org/
- https://quarto.org/docs/guide/
- https://quarto.org/docs/extensions/creating.html
- https://quarto.org/docs/reference/formats/html.html
- https://posit.co/blog/announcing-quarto-a-new-scientific-and-technical-publishing-system/