Navigator is a navigation engine for Typst. It provides a modular suite of tools to generate dynamic tables of contents (progressive outlines), progress bars (miniframes), and automated transition slides. It should be compatible with any presentation framework (e.g., Polylux, Presentate, Typslides). All tools can also be used for any native Typst documents (particularly the progressive-outline function), but they are especially useful when used within a structured presentation.
- Progressive Outline: A roadmap component that adapts to the current position in the document, with smart state management (active, completed, future).
- Flexible Miniframes: Configurable progress markers (compact vs. grid modes, alignment, vertical positioning).
- Transition Engine: Automatically generates "roadmap" slides during section changes via simple show rules.
Import the package from the Typst Universe:
#import "@preview/navigator:0.1.1": *The progressive-outline function inserts a table of contents that reflects the document's progression. See detailed documentation (⇒ pdf).
#progressive-outline(
level-1-mode: "all",
level-2-mode: "current-parent",
text-styles: (
level-1: (active: (weight: "bold", fill: navy), inactive: 0.5),
),
spacing: (v-between-1-2: 1em)
)Generates a bar of dots (miniframes) representing the logical structure of a presentation. See detailed documentation (⇒ pdf).
#render-miniframes(
structure, // Extracted via get-structure()
current-slide-num, // Current active slide index
style: "compact",
navigation-pos: "top",
active-color: blue
)Automates the creation of roadmap slides using a show rule on structural headings. See detailed documentation (⇒ pdf).
#show heading.where(level: 1): h => render-transition(
h,
mapping: (section: 1, subsection: 2),
slide-func: my-slide-wrapper, // A function (fill, body) => content
transitions: (background: navy)
)Integration examples using different slide engines are available in the examples/ directory:
-
Presentate: Miniframes + Progressive Outline & Transitions (⇒ pdf results)
-
Polylux: Miniframes only (⇒ pdf results), Progressive Outline & Transitions only (⇒ pdf results)
-
Standard Documents: Report with local roadmaps (⇒ pdf results), Customizable markers (⇒ pdf results)
Distributed under the MIT License. See LICENSE for more information.
Thanks to the presentate package author for his constructive feedback and valuable insights during the development of these tools.
- Added
top-paddingoption torender-transitionfor better control of roadmap vertical positioning.
- First release.