Skip to content

engineer-pat/quarto-poster-template

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

UNM Quarto Poster Template

A reproducible academic poster template for the University of New Mexico, built with Quarto, the Typst poster format, and Python. Write your poster in plain markdown, generate every figure and table with Python (matplotlib / pandas) at render time, and export a print-ready PDF in UNM brand colors — Cherry (#BA0C2F) and Silver (#A7A8AA).

Preview of the rendered UNM poster

This template is a Python conversion and UNM re-style of higgi13425/quarto_poster, which in turn builds on the quarto-ext/poster Typst format. See Attribution below.


What you get

  • Pure Python workflow — code cells use the Jupyter engine ({python}), no R required.
  • UNM branding out of the box — Cherry title block with a Silver border, Cherry section rules, and a Cherry footer, all driven by easy-to-change YAML options.
  • Reproducible content — figures (matplotlib) and tables (pandas) are produced when you render, so they never drift out of sync with your data.
  • Adaptive header — the title block automatically fills the width next to the UNM logo at any poster size. Add a second logo/image with one option.
  • Print-ready PDF via Typst — fast, no LaTeX install needed (Typst ships with Quarto).

Requirements

Tool Version Notes
Quarto ≥ 1.4 Bundles Typst — no separate LaTeX/Typst install.
Python ≥ 3.9 Any recent CPython.
Python packages jupyter, matplotlib, pandas, numpy.

Install the Python dependencies:

pip install jupyter matplotlib pandas numpy

Font note: the template asks for Open Sans and falls back to Helvetica/Arial if it isn't installed. For an exact match to UNM's web brand, install Open Sans (free). Any installed font name works in the set text(font: …) line of the template.


Quick start

  1. Get the template — clone this repo (or click Use this template on GitHub):

    git clone https://github.com/engineer-pat/quarto-poster-template.git
    cd quarto-poster-template
  2. Render it to confirm your setup works:

    quarto render poster.qmd

    This produces poster.pdf. (In VS Code or RStudio with the Quarto extension, just click Render.)

  3. Edit poster.qmd — change the YAML header (title, authors, size, colors) and replace the section prose and code cells with your own.

  4. Re-render and send poster.pdf to your printer.


Editing the poster

1. Title, authors, and size (YAML header)

The top of poster.qmd controls everything about the layout:

format:
  poster-typst:
    size: "48x36"            # width x height in INCHES
    poster-authors: "First Author^1^, Second Author^1^"
    departments: "^1^Department of …, University of New Mexico"
    institution-logo: "./images/unm-logo.png"
    num-columns: 3           # number of body columns
    title-font-size: 64
    font-size: 32            # body text size in pt
  • Superscripts in the author line use carets: Author^1^.
  • Common US poster sizes: 36x24, 48x36, 60x30, 72x36 (landscape width x height).
  • For a portrait poster, just swap the numbers, e.g. 36x48.

2. UNM brand colors

Colors are plain hex strings (no leading #) and already default to UNM brand values:

    header-color: "BA0C2F"        # UNM Cherry — title block + section rules
    header-text-color: "FFFFFF"   # text inside the cherry blocks
    accent-color: "A7A8AA"        # UNM Silver — title-block border
    footer-color: "BA0C2F"        # footer bar
UNM color Hex Used for
Cherry #BA0C2F Title block, section headings/rules, footer
Silver #A7A8AA Title-block border
Turquoise #007A86 Accent (used in the example plot)
Gray #63666A Plot axes/labels

3. The footer

    footer-text: "UNM Research Symposium 2026"   # left
    footer-url: "https://github.com/you/repo"    # center
    footer-emails: "you@unm.edu"                 # right

4. Writing content

The body is ordinary Quarto markdown:

  • # starts a new section (level-1 heading, gets a cherry rule).
  • ## is a run-in subheading.
  • Bullets with -, numbered lists with 1..
  • **bold**, *italic*, ~sub~, ~~strike~~.
  • Inline math $x^2$, display math $$ … $$ (rendered by Typst).

5. Figures with Python

Code cells run Python and embed their output. Caption and label come from cell options:

```{python}
#| label: fig-bars
#| fig-cap: "Mean outcome by treatment group."
#| fig-align: center
import matplotlib.pyplot as plt
fig, ax = plt.subplots(figsize=(8, 5))
ax.bar(["A", "B", "C"], [3, 4, 6], color="#BA0C2F")
plt.show()
```

Reference it in text with @fig-bars. Code is hidden by default (echo: false in the header); set echo: true to show it.

6. Tables

Two approaches are demonstrated in poster.qmd:

  • Static markdown tables — write them by hand; caption with : Caption {#tbl-id}.
  • Data-driven tables — a small df_to_markdown() helper turns a pandas DataFrame into a markdown table inside an #| output: asis cell, so the table tracks your data. (This avoids the optional tabulate dependency.)

7. Callout boxes

Drop a colored Typst block anywhere for emphasis:

::: {.block fill=rgb("BA0C2F") inset="20pt" radius="8pt" stroke="2pt + rgb(\"A7A8AA\")"}
[**Key finding.** Your highlight here.]{style="color: white"}
:::

8. Adding a second logo or image

Leave it off for a clean logo-+-title header, or add one to the right of the title:

    institution-image: "./images/my-lab-logo.png"
    univ-image-scale: 90
    univ-image-column-size: 8

Project structure

quarto-poster-template/
├── poster.qmd                       # ← your poster (edit this)
├── images/
│   ├── unm-logo.png                 # UNM institutional logo
│   └── preview.png                  # rendered preview (for this README)
├── _extensions/
│   ├── quarto-ext/poster/           # Typst poster format (UNM-restyled)
│   ├── quarto-ext/fontawesome/      # optional: Font Awesome icons
│   └── jmbuhr/qrcode/               # optional: QR codes
├── README.md
└── LICENSE

The UNM styling lives in _extensions/quarto-ext/poster/typst-template.typ — edit the #let poster(...) defaults there to change fonts, spacing, or the default brand colors for every poster.


Tips

  • Iterate fast: quarto preview poster.qmd opens a live-reloading preview.
  • Big posters render quickly because Typst is fast — re-render freely.
  • Check at 100%: open poster.pdf and zoom to 100% to judge real-world text size.
  • Vector figures: save matplotlib figures as SVG (#| fig-format: svg) for crisp printing of line art.

Attribution

  • Poster format: quarto-ext/poster by Carlos Scheidegger (MIT).
  • Original R-based academic poster: higgi13425/quarto_poster by Peter Higgins.
  • This Python conversion and UNM re-style: maintained in this repository.

The University of New Mexico name, logo, and colors are trademarks of UNM. Use them in accordance with the UNM brand guidelines. This is an unofficial, community template and is not endorsed by the University.

License

Released under the MIT License — see LICENSE. The UNM logo in images/ is a University trademark and is not covered by the MIT license.

About

Reproducible UNM academic poster template (Quarto + Typst + Python)

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors