Create project in app
A Typst template for building a hierarchical index or binder — Areas → Categories → IDs → notes — with styled headings and an optional table of contents.
Usage
Start a new project from the template:
typst init @preview/comozeidex:0.1.0 my-index
This gives you a ready-to-edit main.typ:
#import "@preview/comozeidex:0.1.0": *
#show: doc.with(title: "My Index")
#toc() // optional table of contents
= Home // Area (level 1)
== Finances // Category (level 2)
=== 11.01 Bank Statements // ID (level 3)
#info[Monthly statements, PDF only]
#physloc[Filing cabinet, drawer 2]
#subid[11.01.01 — Checking account]
==== Some note as its own line // looks like #info, no bullet
Knobs
Styling is controlled by module-level variables at the top of
lib.typ — fonts, sizes, indents, and colors for each heading level,
plus tables, code blocks, blockquotes, and links. Set
number-sections = false to turn off outline-style numbering (on by
default) if your Area/Category/ID headings already carry their own
hand-typed numbers.
Helpers
doc(title:)— the document wrapper; apply with#show: doc.with(...).toc()— an optional table-of-contents page.info(body),physloc(body),subid(body)— bulleted leaf notes under an ID heading.callout(body, fill:),blockquote(body),divider()— general prose-page helpers.
License
MIT, see LICENSE.