[READ-ONLY] Mirror of https://github.com/shkm/blurt. โœ๐Ÿผ Just write something.
pandoc ssg static-site-generator
0

Configure Feed

Select the types of activity you want to include in your feed.

6 1 0

Clone this repository

https://git.vm.fail/jamie.schembri.me/blurt https://git.vm.fail/did:plc:in7iggusdyyoz7suowiu6hxo
ssh://git@knot1.tangled.sh:2222/jamie.schembri.me/blurt ssh://git@knot1.tangled.sh:2222/did:plc:in7iggusdyyoz7suowiu6hxo

For self-hosted knots, clone URLs may differ based on your setup.


README.md

blurt#

You want to write something and share it with the world. But you'd need to set up a blog. Woe! Who has the time?

Hold up there, sunshine. Blurt's got your back. This is everything you really need to write and publish stuff on the internet.

Quick start#

  1. Create a repo from this template
  2. On your repo, go to settings -> Pages -> Source: select GitHub Actions
  3. Clone your repo

Now just write your posts (see docs below), commit and push. After a short while, your repo should have a deployment (check the right side).

That's it!

Requirements#

  • pandoc - for the actual heavy lifting
  • python3 (optional) - for the dev server (start command)
  • fswatch (optional) - for instant rebuilds during development

Usage#

# Create a new post
./blurt new "My Post Title"

# Create and open in $EDITOR
./blurt new -e "My Post Title"

# Build the site
./blurt build

# Watch, rebuild, and serve at http://localhost:8000
./blurt start

Structure#

โ”œโ”€โ”€ blurt         # CLI
โ”œโ”€โ”€ config.yaml       # Settings
โ”œโ”€โ”€ templates/
โ”‚   โ”œโ”€โ”€ index.html    # Index page template
โ”‚   โ””โ”€โ”€ post.html     # Post page template
โ”œโ”€โ”€ static/           # Static files (copied to dist/)
โ”œโ”€โ”€ posts/            # Markdown posts
โ””โ”€โ”€ dist/             # Generated site

Templates#

Templates use pandoc's variable syntax:

  • $blog_title$ - from config.yaml
  • $title$ - post title from frontmatter
  • $date$ - post date from frontmatter
  • $body$ - converted markdown content

Posts#

Posts are markdown files with YAML frontmatter:

---
title: My Post Title
date: 2026-01-13
---

Post content here.

Output goes to dist/my-post-title/index.html for clean URLs.