c

classicthesis

@preview

Thesis inspired by André Miede's ClassicThesis style.

v0.1.0
MIT
Template

Package Information

Last Updated
Categories
bookthesisreport

Preview

Template preview

1. Get the package

Download the package using the TPIX CLI:

tpix get @preview/classicthesis:0.1.0

2. Initialize from template

Create a new project from this template:

typst init @preview/classicthesis:0.1.0

Version History

0.1.0
6e08cf8fb108...

ClassicThesis for Typst

A Typst template inspired by André Miede's ClassicThesis LaTeX style, which is an homage to Robert Bringhurst's The Elements of Typographic Style.

Features

  • Elegant typography with Palatino-style fonts (TeX Gyre Pagella)
  • Spaced small caps for chapter and section headings
  • Classic book design with proper margins and running headers
  • Part pages with optional preamble text
  • Theorem environments (theorem, definition, example, remark)
  • Clean code blocks with monospace fonts

Quick Start

typst init @preview/classicthesis:0.1.0 my-book
cd my-book
typst compile main.typ

Usage

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

#show: classicthesis.with(
  title: "My Book Title",
  subtitle: "A Subtitle",
  author: "Author Name",
  date: "2025",
  dedication: [To my readers.],
  abstract: [This book explores...],
)

#part("Part One", preamble: [Introduction to the topic.])

= Chapter One

Your content here...

== Section

More content...

Template Options

Option Type Description
title string Document title
subtitle string Optional subtitle
author string Author name
date string Publication date
paper string Paper size (default: "a4")
lang string Language code (default: "en")
dedication content Optional dedication page
abstract content Optional abstract

Environments

Theorem

#theorem(title: "Pythagorean Theorem")[
  In a right triangle, $a^2 + b^2 = c^2$.
]

Definition

#definition(title: "Algorithm")[
  A finite sequence of well-defined instructions.
]

Example

#example(title: "Sorting")[
  QuickSort has average complexity $O(n log n)$.
]

Remark

#remark()[
  This is an additional observation.
]

Part

#part("Part Title", preamble: [
  Optional descriptive text for this part.
])

For the authentic ClassicThesis look, install these fonts:

  • TeX Gyre Pagella - Palatino clone (main text)
  • Fira Code - Monospace with ligatures (code)

On Ubuntu/Debian:

sudo apt install fonts-texgyre fonts-firacode

Colors

The template defines these colors for customization:

  • halfgray - Chapter numbers
  • maroon - Part titles
  • royalblue - Links
  • webgreen - Citation links
  • webbrown - URL links

Credits

  • Original ClassicThesis LaTeX template by André Miede
  • Typographic principles from The Elements of Typographic Style by Robert Bringhurst
  • Typst port by Adwiteey Mauriya

License

MIT License - see LICENSE for details.