From IndieWeb
Jump to: navigation, search

Peter Molnar

Current: static generator

After spending months on arguing with myself, I finally decided to write my static generator and walk away from WordPress. It took me a long while, but I'm more or less ready. Summary and reasoning: Going Static

What, why, how

My photos are POSSEd to Flickr via bridgy, but I barely cross-post anything else these days.
After speding a lot of time thinking throught what should be on my website I decided to archive silo interactions, favorites, bookmarks, etc. only in private archives. Most of these require OAuth 1 or 2, therefore there is a tiny service running which handles callbacks and stores tokens.
Using Aaron Parecki's X-Ray to detect the webmention endpoints (yes, from Python, via a system call) to send webmentions to. The webmentions themselves (from,to,timestamp) are in an SQLite database to skip the ones already done.

It's not yet done in the 2.x version of my static generator.

The site populates an SQLite database using the FTS5 engine for full text search. It comes with a set of weird issues ( no - allowed for example, because it interprets it as a column name), but it works reasonably well and it's extremely simple.
image and image metadata handling
It all relies on exiftool for getting metadata from images, but all my tries for storing all the image related meta (including text and tags) failed due to the lack of a software capable of handling IPTC and XMP with reasonable UI, so I ended up using the same, post-like YAML+Markdown format, with the same name as the photos, therefore they are linked.


I used WordPress between 2007 and 2016, but in the end I was running a version where I had to apply patches to the core - I tried submitting them but most of them got neglected.

Consider these as abandoned or on hold projects.

  • wp-webmention-again - an alternative webmentions plugin for WordPress. It's most probably broken by now.
  • Blogroll2email- turns the Blogroll part of WordPress to feed (atom, rss, mf2) parser to send entries as mail; supports granary json-mf2 format
  • wp-shortslug - use pubdate epoch converted to base36 (0-9a-z) as short permalink
  • wp-flatbackups - an auto-exporter for WordPress, creating a flat, directory based copy of YAML + Markdown (and/or HTML) of every post. This can't be imported, just servers as a fallback plan for longevity.
  • wp-url2snapshot - to have a backup copy of a linked website, the plugin pulls in an html-only version of every link it can find in any post content and stores it for potential future use. In case a link is not snapshotted yet and is not available on the web anymore, it tries to fall back to the last available version on
  • Keyring Social Importers a reactions (like, fav, comment, etc ) importer for various silos