!! The true source of this repo lives HERE. Gitlab repo is for cicd ONLY. !!
My website/blog repo with Typst using html, and bundle experimental features. Oh, and also an Atom feed.
nix develop
# dev server for live updates
typst watch --root . --features bundle,html -f bundle main.typ build
# compile
./build.sh
Gitlab CI will automatically inject a ci.json file:
{
"date": "some date",
"link": "https://gitlab.com/.../job/42"
}
is used by the compile step to show the link to the render job in the footer
of the blog. Just for fun :)
Management of blog posts is scripted and will drop you into your $EDITOR once it
creates the required files with settings you chose.
Example create run:
❮ ./posts.sh
posts.sh - blog post management
1) create
2) list
3) edit
4) update
5) remove
6) quit
#? 1
Title: New test post
Slug [new-test-post]:
Long title (blank = same as title) [New test post]:
Description: Testing out a new post
Date [2026-08-03]:
slug: new-test-post
title: New test post
long title: New test post
description: Testing out a new post
date: 2026-08-03
Create this post? [y/N]: y
created post/new-test-post.typ
<$EDITOR opens post/new-test-post.typ>
site rebuild: OK
#? 6
Example remove run:
❯ ./posts.sh
posts.sh - blog post management
1) create
2) list
3) edit
4) update
5) remove
6) quit
#? 5
1) new-test-post 3) framework-server-p2 5) listing-my-fav-advice 7) nixos-p1 9) self-host
2) a-rack-finally 4) nas-upgrade 6) framework-server 8) programming-as-art 10) programs
#? 1
about to remove: new-test-post - New test post
Really remove 'new-test-post'? [y/N]: y
also delete image directory post/new-test-post/? [y/N]: y
deleted post/new-test-post/
removed new-test-post
site rebuild: OK
#? 6
