The quarto-web repository hosts the source code for quarto.org, the official Quarto documentation website. This is a Quarto website project that documents Quarto itself while demonstrating the framework's capabilities.
This page provides a high-level overview of the repository's architecture, major systems, and how they work together. For detailed information about specific subsystems, see the linked pages in the wiki navigation.
quarto-web is a documentation website that:
_download.json, _prerelease.json)gallery.yml_redirects (Netlify).github/workflows/)Key Statistics:
prod_QUARTO and prerelease_QUARTO indexesSources: _quarto.yml1-3 _quarto.yml29-36 docs/download/_download.json1-93 docs/download/_prerelease.json1-88 _redirects1-27
Key Directories and Files
| Path | Purpose | Key Contents |
|---|---|---|
_quarto.yml | Project configuration | project.type: website, navbar (lines 61-102), 5 sidebar definitions (lines 104-600) |
index.qmd | Landing page | Hero banner, 4 language tabs (Python, R, Julia, Observable), 6 feature cards |
docs/guide/ | Main documentation | 9 top-level sections via guide.yml, 199 doc pages |
docs/download/ | Release metadata | _download.json (14 platform assets), _prerelease.json (13 assets) |
docs/extensions/ | Extension catalog | 5 YAML registries (shortcodes-and-filters, custom-formats, journal-articles, revealjs, revealjs-formats) |
docs/gallery/ | Gallery showcase | gallery.yml with 100+ examples, listing pages |
_redirects | URL routing | 27 redirect rules for version-agnostic download URLs |
_freeze/ | Execution cache | Cached Jupyter/Knitr outputs for incremental builds |
.github/workflows/ | CI/CD | preview.yml, publish.yml, update-downloads.yml, upload-index.yml |
theme.scss, theme-dark.scss | Custom styling | Light/dark mode color overrides, brand colors |
Sources: _quarto.yml1-3 _quarto.yml61-102 _quarto.yml104-600 index.qmd1-342 docs/guide/guide.yml1-199 docs/download/_download.json1-93 _redirects1-27
Configuration Hierarchy and Key Settings
Critical Configuration Values
| Setting | Location | Value | Purpose |
|---|---|---|---|
project.type | Line 2 | website | Enables website-specific features |
project.output-dir | Line 3 | _site | Build output directory |
project.post-render | Line 5 | tools/algolia-add-custom-attribute.ts | Enriches search metadata |
project.resources | Lines 7-9 | _download.json, _prerelease.json, _redirects | Includes non-rendered files |
website.search.algolia.index-name | Line 33 | prod_QUARTO | Production search index |
website.search.algolia.application-id | Line 34 | ZPJB5I1QN7 | Algolia app identifier |
format.html.theme | Lines 679-680 | Light: [cosmo, theme.scss]Dark: [cosmo, theme-dark.scss] | Custom theming |
filters | Lines 701-705 | tools-tabset.lua, color-box.lua, include-dark.lua | Content processing |
freeze | Line 707 | true | Caches computational results |
Sources: _quarto.yml1-11 _quarto.yml15-103 _quarto.yml675-699 _quarto.yml701-707
Build Process Details
.qmd, .ipynb, and .md filesfreeze: true (_quarto.yml706) enables result caching in _freeze/tools-tabset.lua for tool selection tabscolor-box.lua for colored calloutsinclude-dark.lua for dark mode content (post-quarto phase)theme.scss, theme-dark.scss)Sources: _quarto.yml4-5 _quarto.yml701-706
| System | Importance Score | Key Files | Code Entities | Purpose |
|---|---|---|---|---|
| Release Distribution | 4003.72 | _download.json (1366.78)_prerelease.json (1596.08)_redirects (1571.14) | version, assets[], download_url, checksum27 redirect rules | Auto-syncs Quarto CLI releases every 15 min, provides stable download URLs |
| Presentation System | 894.13 | docs/presentations/revealjs/demo/index.qmd (784.66)docs/presentations/revealjs/index.qmd (109.47) | RevealJS demos, format options | Comprehensive presentation showcase and documentation |
| Extension Catalog | 305.06 | docs/extensions/shortcodes-and-filters.ymldocs/extensions/custom-formats.ymllisting-*.qmd | 231 shortcodes/filters 26 custom formats 33 RevealJS extensions | YAML-based registry of community extensions |
| Site Configuration | 289.87 | _quarto.yml (234.32)_variables.yml (6.41) | website.navbar, website.sidebar[], website.search.algoliarstudio.min_version | Project structure, navigation, search |
| Website Navigation | 147.33 | Sidebar definitions in _quarto.yml (lines 104-600) | 5 sidebars: get-started, guide, extensions, reference, prerelease | Multi-level content organization |
| Gallery System | 145.01 | gallery.ymldocs/gallery/*.qmd | 100+ example entries with title, image, categories | Visual showcase of Quarto capabilities |
| CI/CD Workflows | 178.60 | .github/workflows/preview.ymlpublish.ymlupdate-downloads.yml | actions/checkout, quarto-dev/quarto-actions/* | Automated deployment and release sync |
Sources: _quarto.yml1-711 docs/download/_download.json1-93 docs/download/_prerelease.json1-88 _redirects1-27
Sources: Diagram 2, Diagram 5 from context, _quarto.yml6-9
The website uses a hierarchical navigation system defined in _quarto.yml:
Navbar (_quarto.yml60-101):
Sidebars (_quarto.yml103-600):
get-started: Tutorial content with floating styleguide: Main documentation with nested sections (Authoring, Computations, Tools, Documents, Presentations, Dashboards, Websites, Books, Manuscripts, Interactivity, Publishing, Projects, Advanced)extensions: Extension catalog and creation guidesreference: Format and feature reference documentationSources: _quarto.yml60-600 docs/guide/guide.yml1-199
The website supports light and dark modes with custom theming:
Theme Configuration (_quarto.yml678-680):
Custom Styles:
theme.scss: Light mode customization with Quarto blue (#39729E) and orange (#EE6331)theme-dark.scss: Dark mode with adjusted colors for accessibilityindex.css: Landing page specific styles with responsive breakpointsstyles.css: Additional global stylesResponsive Design:
Sources: theme.scss1-45 theme-dark.scss1-189 index.css1-298
The release system (importance 4003.72) provides automated, version-agnostic download URLs:
Release Metadata Workflow
Key Components:
version, name, created, updated, published, assets[] (each asset has name, download_url, checksum, size)/download/latest/* → GitHub release URL (lines 1-14), /download/prerelease/* → prerelease URL (lines 15-27)_redirects processed during deploy for 301 redirectsSee page [2] for complete release system documentation.
Sources: docs/download/_download.json1-93 docs/download/_prerelease.json1-88 _redirects1-27 _quarto.yml7-9
Multi-Environment Deployment Strategy
Deployment Details
| Environment | Branch | URL | Algolia Index | Workflow | Trigger |
|---|---|---|---|---|---|
| Production | main | quarto.org | prod_QUARTO | publish.yml | Push to main |
| Prerelease | prerelease | prerelease.quarto.org | prerelease_QUARTO | publish.yml | Push to prerelease |
| PR Preview | Any | deploy-preview-N.netlify.app | (uses prod) | preview.yml | Pull request opened/updated |
Infrastructure Services:
_redirects file for URL routingZPJB5I1QN7, configured in _quarto.yml32-36)quarto-dev/quarto-actions/*See page [6] for complete CI/CD documentation.
Sources: _quarto.yml29-36
This wiki documents the quarto-web repository's architecture and systems. The documentation is organized hierarchically:
Each section includes detailed diagrams, code references, and explanations of how the systems work together.
Sources: Table of contents from context
Refresh this wiki
This wiki was recently refreshed. Please wait 2 days to refresh again.