words.py a simple system

words.py a simple system

words.py

A single Python script for publishing markdown to HTML with an RSS feed. No frameworks, no dependencies beyond pandoc.

Usage

Create a new post:

./words.py new "Post Title"

This creates ~/words/2026-01-16-post-title.md with a heading ready to edit.

Write in markdown, then build:

sudo ./words.py build

HTML and RSS go straight to /var/www/html/words/. Done.

Why

I wanted to write and publish without thinking about it. Most static site generators do too much. This one:

That’s it. ~150 lines of Python.

Structure

~/words/
├── words.py
├── template.html
├── styles.css
└── *.md

/var/www/html/words/
├── index.html
├── feed.xml
├── styles.css
└── *.html

Source

./words.py new "Title"
./words.py build
./words.py serve  # local preview

The script lives at /words/words.py. The RSS feed is at /words/feed.xml.