Hastie
A static site generator in Python
Install / Use
/learn @mkaz/HastieREADME
Hastie - static site generator
Hastie is a static site generator, it processes a folder of markdown text files, applies a template, and generates an HTML site.
Using Hastie
To use Hastie:
- Create your content in markdown organized by directory.
- Specify templates to use in
hastie.toml - Run Hastie to smash the two together, output to
output/ - Upload and serve.
Install
Install using pip
python3 -m pip install git+https://github.com/mkaz/hastie
Template Building
See the docs site in this repo for documentation.
# clone repo
git clone https://github.com/mkaz/hastie
cd hastie
# install dependencies
uv sync
# build docs site
cd docs
uv run python ../hastie/main.py
# serve site
python3 -m http.simple --directory output/
History
Hastie started as a Go project, but rewritten to Python. See golang branch for archived code.
Why? I switched my mkaz.blog site over to static for easier maintenance and looked briefly at Pelican but it does too much. Domain name aside, my site isn't really a blog in the reverse-chronological order of posts sense; it is a collection of pages in categories.
Pelican has a lot of requirements around dates, and template types. It generates numerous additional pages for author, tags, and other things I don't really want.
So I dusted off Hastie which does exactly what I want, but since I haven't coded in Go in awhile, I switched it over to Python.
License
The project is licensed under the MIT LICENSE.
Related Skills
node-connect
349.2kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
109.5kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
349.2kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
349.2kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
