CRITICAL SECURITY WARNING
This is the ONLY official repository for Noteworthy. Noteworthy does not relate to repos other than sihooleebd/noteworthy, sihooleebd/noteworthy-website, sihooleebd/noteworthy-modules (this list is live updated).
We are aware of unauthorized clones of this repository being used to spread malware.
- We NEVER distribute executable files (e.g., .exe, .msi, .dmg).
- This project is released as source code only. If you downloaded a playable or runnable application claiming to be this project, IT IS MALWARE.
- Please uninstall any such files immediately and scan your system.
- Always verify that you are downloading from:
https://github.com/sihooleebd/noteworthy.
We're making major & breaking changes to the nightly branch. This branch will soon be moved to a legacy branch. We suggest you start off at nightly.
,--.
,--.'|
,--,: : |
,`--.'`| ' :
| : : | |
: | \ | :
| : ' '; |
' ' ;. ;
| | | \ |
' : | ; .'
| | '`--'
' : |
; |.'
'---'
A powerful Typst framework for creating beautiful, themed educational documents.
Say hi to Noteworthy, an academic parser and framework for creating massive and complex documents in one go. It can be used for building educational textbooks, lecture notes, and technical documentation with Typst. It provides a complete ecosystem of tools, themes, and components that work together seamlessly.
An example project is available at https://github.com/sihooleebd/math-noteworthy.
- Theme System: 13+ pre-built color schemes with easy customization
- Content Block Library: Pre-styled components for definitions, theorems, examples, proofs, and solutions
- Plotting Engine: Advanced 2D/3D plotting, vector diagrams, and geometric constructions
- Document Structure: Automated table of contents, chapter covers, and page headers
- Configuration Layer: JSON-based settings in
templates/config/ - Build System: Incremental compilation with automatic PDF merging
- Interactive Editors: TUI-based editors for config, hierarchy, schemes, and snippets
- Theme-Driven Design: Switch between 13+ themes instantly
- Modular Architecture: Import only what you need
- Rich Typography: Beautiful math typesetting with custom snippets
- Extensible: Add custom blocks, themes, and plotting functions
- Production-Ready: Used for real educational materials
- Incremental Build: Compile sections individually, merge automatically
- Typst (v0.12.0+): Install Typst
- Python 3: Required for the build system
- Poppler (provides
pdfinfofor page counting):- macOS:
brew install poppler - Linux:
apt-get install poppler-utils - Windows: Download from poppler releases and add to PATH
- macOS:
- PDF Tool (for merging and metadata):
- macOS:
brew install pdftk-java - Linux:
apt-get install pdftk - Windows: Download from pdftk releases
- Fallback: Ghostscript (usually pre-installed on macOS/Linux, download for Windows)
- macOS:
Note |
pdftkis required for adding PDF metadata (title, author) and clickable bookmarks/outline that appear in the PDF viewer sidebar for easy navigation.
mkdir project
cd project
mkdir content
curl -O https://raw.githubusercontent.com/sihooleebd/noteworthy/master/noteworthy.py
python3 noteworthy.pyAdd the neccesary content for your project and run the build script. The setup wizard will guide you through configuration:
python3 noteworthy.pyYou can force an update or switch branches using CLI flags:
| Flag | Description |
|---|---|
--load |
Force update/install from master branch. |
--load-nightly |
Force update/install from nightly branch. |
--force-update |
Destructive. Removes existing noteworthy and templates folders and reinstalls from master. |
--force-update-nightly |
Destructive. Removes existing noteworthy and templates folders and reinstalls from nightly. |
The noteworthy system guides you through the initialization, the configuration, and the build. Upon first run, the template will load the necessary template files.
TUI Features:
- Chapter Selection: Toggle individual chapters/sections to compile
- Options:
d- Debug mode (verbose output)f- Include/exclude frontmatter (cover, preface, outline)l- Keep individual PDFs after mergec- Configure custom Typst flags (e.g.,--font-path)e- Open configuration editors
- Editor Menu (
ekey):- Config Editor - Document settings (title, authors, theme, preface content, etc.)
- Hierarchy Editor - Chapter/page structure with add/delete
- Scheme Editor - Color themes with create/delete
- Snippets Editor - Custom macros
- Ignored Files - Manage files excluded from indexing
- Controls: Arrow keys to navigate, Space to toggle, Enter to build,
qto quit - Build Progress: Real-time compilation status with Typst log toggle (
v) - Template Integrity Check: Verify that the template files are not corrupted and auto fix
- Backup & Restore: Export and Import configuration files individually
# Compile specific section
typst compile templates/parser.typ --input target=01.01 section.pdfContributions are welcome! To contribute:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
MIT License - See LICENSE for details.
Built with:
Created by Sihoo Lee & Hojun Lee
Noteworthy - A framework for noteworthy educational documents.














