Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DELTA Typst themes

Shared Typst themes used for teaching materials at DELTA – Střední škola informatiky a ekonomie, s.r.o.

Each theme lives in its own directory together with its documentation, a runnable example and the compiled output of that example, so you can see what the theme produces before you write a single line.

Theme Directory Built on Used for
Presentation presentation/ Touying 0.7.4 lecture slide decks (interactive + handout)
Exercise exercise/ grape-suite 4.0.0 written tests and worksheets (Czech localization)

Requirements

  • Typst 0.15.1 — the version pinned in CI. Newer versions usually work, but the committed example outputs are produced with this one.
  • Typst packages, downloaded automatically from Typst Universe on first compile:
    • @preview/touying:0.7.4 — presentation theme
    • @preview/fletcher:0.5.8 — diagrams (only if your document draws any)
    • @preview/grape-suite:4.0.0 — exercise theme
  • Optional font Atkinson Hyperlegible Next for the exercise theme. Without it Typst prints a harmless unknown font family warning and falls back to Libertinus Serif.

Using a theme

The themes are plain .typ files with no build step. Copy the one you need into your project (or add this repository as a git submodule) and import it with a relative path:

#import "delta-theme.typ": *        // presentation
#import "delta-exercise.typ": project, subtask, task   // exercise

Then compile with the repository root passed as --root, so relative imports that climb out of the document directory keep working:

typst compile --root /path/to/project path/to/document.typ

The per-theme READMEs document every option and function:

Building the examples

./build.sh

This compiles all five example outputs and checks the presentation for Touying overflow pages (the glitch where a slide whose fully revealed content does not fit emits a near-blank continuation page):

Output What it is
presentation/example/example.pdf example deck, animations on (one page per reveal step)
presentation/example/example-handout.pdf same deck with config-common(handout: true), one page per slide
exercise/example/example.pdf example test as handed to students
exercise/example/example-napoveda.pdf same test with hints (show-hints: true)
exercise/example/example-reseni.pdf same test with suggested solutions (show-solutions: true)

The handout, hints and solutions variants are produced by temporarily un-commenting a line in the source and restoring it afterwards, so those lines must stay commented out in committed sources. The same happens in CI (.github/workflows/compile.yml) on every push touching a .typ file.

Repository layout

typst-themes/
  build.sh                     # compiles all examples + blank-page check
  presentation/
    delta-theme.typ            # the theme
    README.md                  # API reference and conventions
    assets/
      delta-logo.png           # school logo (trademark, see LICENSE)
    example/
      example.typ              # example source
      example.pdf              # example output (interactive)
      example-handout.pdf      # example output (handout)
  exercise/
    delta-exercise.typ         # the theme
    README.md                  # API reference and conventions
    example/
      example.typ              # example source
      example.pdf              # example output (plain)
      example-napoveda.pdf     # example output (with hints)
      example-reseni.pdf       # example output (with solutions)

Adding another theme

Keep the shape consistent so every theme is documented the same way:

  1. Create a directory named after the document kind (presentation, exercise, …) with the theme .typ at its root.
  2. Write a README.md documenting every function and option the theme exposes.
  3. Add example/example.typ demonstrating the theme, and commit its compiled output next to it.
  4. Wire the example into build.sh so CI compiles and checks it.

Author and license

Ing. Luboš Zápotočný, DELTA – Střední škola informatiky a ekonomie, s.r.o.

Licensed under CC BY-NC-SA 4.0. You may share and adapt these themes for non-commercial purposes with attribution, and must distribute derivatives under the same license.

The DELTA name and the logo in presentation/assets/ are trademarks of the school and are not covered by that license — see the TRADEMARKS section of LICENSE. If you adapt these themes, swap in your own logo.

About

No description, website, or topics provided.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages