Universe

Ready-to-use, SDU-branded document frontpages for coursework at the University of Southern Denmark (Syddansk Universitet), a title page and page setup for every kind of hand-in.

Thesis, lecture-note, exercise and assignment cover pages produced by sdust

Quick start

#import "@preview/sdust:0.1.0": *

#show: note.with(
  title:  "Analysis & Topology",
  course: "MM537 — Metric Spaces",
  author: "Firstname Lastname",
  date:   "Autumn 2026",
)

= Open and closed sets
Your content here.

Every template renders an A4 cover page in the SDU layout with the SDU red accent, sets up 1.5 line spacing, numbered headings and a centred current/total page number, and (optionally) an outline.

Want the styling without a cover page? Use page-setup:

#import "@preview/sdust:0.1.0": *
#show: page-setup

= First Section

The SDU logo is a controlled brand asset and is therefore not bundled. No logo is drawn unless you pass one, one can download it from SDUs own website:

#show: thesis.with(
  logo: image("sdu-logo.png", width: 12em),
  // ...
)

logo: none (the default) omits it entirely.

Templates

Function For
page-setup Base styling only, no cover page
thesis Bachelor’s / Master’s thesis title page
note Lecture notes
exercise Exercise sheets
assignment Assignments
project Group / solo project reports
submission Lightweight hand-in title card
exam Exam submissions

Common named arguments: title, subtitle, author (string or array), supervisor, course, date, logo, outline, outline-depth. thesis also takes department: and programme:; project takes group:, abstract: and keywords:; exam takes duration:, student-number: and more.

Page cards

Coloured titled cards for notes and exercises — theorem, definition, example, proof and corollary, plus exercise pair question / answer:

#theorem(title: "Theorem 2.1 (Pythagorean theorem)")[
  For a right-angled triangle with legs $a$ and $b$ and hypotenuse $c$,

  #boxed($ a^2 + b^2 = c^2 $)
]

#definition(title: "Definition 2.2 (Injective function)")[
  A function $f: A -> B$ is *injective* if
  $ f(x) = f(y) arrow.r.double x = y. $
]

#example(title: "Example 2.3")[
  The derivative of $f(x) = x^3$ is
  $ f'(x) = 3x^2. $
]

#proof[
  Let $a$ and $b$ be odd integers. Then there exist integers $m$ and $n$ such that
  $a = 2m + 1$ and $b = 2n + 1$.

  Therefore,
  $ a + b = 2m + 2n + 2 = 2(m+n+1), $
  which is even. #QED
]

#question(title: "Exercise 5")[
  What is the probability of rolling a $6$ with a fair six-sided die?
]

#answer[
  There is one favourable outcome out of six possible outcomes, so
  $ P(X = 6) = 1/6. $
]

theorem, definition, example, proof and question/answer blocks

The title argument is optional (#theorem[...] defaults to “Theorem”).

The cards use fixed light fills and are meant for print / PDF; they do not adapt to a dark editor preview.

Boxing an equation

boxed frames a key result. A block equation is centred like a normal display equation; anything else is framed inline. Optional fill:, stroke:, inset:, radius:.

#boxed($ e^(i pi) + 1 = 0 $)

the bound #boxed($O(n log n)$) is tight

#boxed(fill: rgb("#fff8e1"), $ sum_(k=1)^n k = (n(n+1)) / 2 $)

Also exported

base-style, bib (Chicago author–date bibliography), word-count / total-words, the branding constants sdu-red and sdu-university, and the Faculty of Science department names imada, bmb, biology, fkf (pass one as department: on thesis).

ACM / CHI papers

sdust does not reproduce the ACM class. For an ACM paper, including CHI (format: "manuscript" for review, format: "sigconf" for camera-ready) — use faithful-acmart.

License

MIT — see LICENSE.