Skip to content

Package the shared theme and page scripts as a Quarto extension #202

Open

Description

@d-morrison

Found in the Quarto idiom audit.

Each site copies the same theme and script files from qwt by hand. Checked 2026-11-02: offwhite.scss is byte-identical in lds and mds, and theme-picker.html is byte-identical in mds and pds. page-navigation.html and styles.css are copied the same way and have already drifted between sites. qwt-reveal-toggle.html, tabset-code-in-tabs.html and anchor-landing.html are copies too.

Quarto's native way to share this is a custom format extension: contributes: formats: can ship SCSS in theme:, shared filters under common:, and is used as format: qwt-html. Pin versions with quarto add owner/repo@tag. Colors and fonts can also move into a shared _brand.yml.

Proposal: one Morrison-Lab/qwt-theme extension holding the files above and the two revealjs filters from #201. I did not confirm whether Dependabot can bump extensions; if it cannot, add a gha check that flags a stale pinned tag. I did not confirm that include-in-header files can be bundled in a format extension (the page does not document it), so test that first.

Effort: medium to large (one PR per site after the extension exists). Do #201 first.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions