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:
- Converts markdown to HTML via pandoc
- Generates an index page
- Generates an RSS feed
- Uses file dates for sorting
- Supports an optional template
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 previewThe script lives at /words/words.py. The RSS feed is at /words/feed.xml.