| Crates.io | typstify-generator |
| lib.rs | typstify-generator |
| version | 0.1.3 |
| created_at | 2026-01-14 19:18:05.540745+00 |
| updated_at | 2026-01-15 08:34:01.592553+00 |
| description | Static site generation engine |
| homepage | https://github.com/longcipher/typstify |
| repository | https://github.com/longcipher/typstify |
| max_upload_size | |
| id | 2043498 |
| size | 217,783 |
A high-performance static site generator with Typst and Markdown support.
Typstify is a modular project composed of several crates:
cargo install typstify
git clone https://github.com/longcipher/typstify
cd typstify
cargo install --path bin/typstify
mkdir my-site && cd my-site
Create config.toml:
[site]
title = "My Blog"
base_url = "https://example.com"
[build]
output_dir = "public"
mkdir -p content/posts
typstify new posts/hello-world
typstify watch --open
Your site is now running at http://127.0.0.1:3000!
| Command | Description |
|---|---|
typstify build |
Build the site for production |
typstify watch |
Start dev server with live reload |
typstify new <path> |
Create new content from template |
typstify check |
Validate configuration and content |
typstify build --output dist # Custom output directory
typstify build --drafts # Include draft posts
typstify watch --port 8080 # Custom port
typstify watch --open # Open browser automatically
typstify -c site.toml build # Custom config file
typstify -v build # Verbose output
typstify -vvv build # Debug output
my-site/
├── config.toml # Site configuration
├── content/ # Content files
│ ├── posts/ # Blog posts (Markdown/Typst)
│ ├── docs/ # Documentation
│ └── about.md # Static page
├── templates/ # HTML templates (optional)
├── style/ # CSS/Tailwind (optional)
├── assets/ # Static assets
└── public/ # Generated output
---
title: "My Post"
date: 2024-01-15
tags: ["rust", "web"]
---
# Hello World
Your content here...
// typstify:frontmatter
// title: "Technical Doc"
// date: 2024-01-15
= Introduction
Your Typst content here...
See docs/configuration.md for full configuration options.
[site]
title = "My Site"
description = "Site description"
base_url = "https://example.com"
default_language = "en"
languages = ["en", "zh"]
[build]
output_dir = "public"
minify = false
syntax_theme = "base16-ocean.dark"
drafts = false
[search]
enabled = true
index_fields = ["title", "body", "tags"]
[rss]
enabled = true
limit = 20
Typstify is organized as a Cargo workspace:
| Crate | Description |
|---|---|
typstify |
CLI binary |
typstify-core |
Configuration and content types |
typstify-parser |
Markdown/Typst parsing |
typstify-generator |
HTML generation and build |
typstify-search |
Search indexing (Tantivy) |
typstify-search-wasm |
WASM search runtime |
typstify-ui |
Leptos UI components |
git clone https://github.com/longcipher/typstify
cd typstify
just dev
just format # Format code
just lint # Run linters
just test # Run all tests
just build # Production build
Apache License 2.0 - see LICENSE for details.
Contributions are welcome! Please read our Contributing Guide before submitting a PR.