Joshua Wood Web Developer

June 19th, 2021

I’m checking out @davewiner’s Outliner+OPML blogging setup.

Dave is the original tools for thought leader, but he’s no rabbi 😂

Here are some resources he recommended to me:

  • OPML checklist: a great overview of Dave’s outliner/OPML ecosystem for developers

  • How Old School works

    • Old School is Dave’s blog generator. It converts OPML from an outliner (where he writes his blog) into the website at It supports some special attributes (via OPML) and markup/short codes (in the content) to control the display of various elements.

    • Little Outliner (LO2) is an outliner (web app) that uses OPML as its native format.

    • Dave’s blog is also backed up on GitHub

  • Instant Outlines: subscribe to OPML over a WebSocket and receive live updates

Modern outliners like Roam and logseq need a common interchange format. OPML seems like the natural choice? For instance, Workflowy has supported OPML since 2013.

Outliners, wikis, etc. have rich histories. It seems like one of the major contributions of modern “tools for thought” is to combine these concepts in interesting ways.

My blog takes 32 seconds to build on my M1 mac, assuming cached dependencies (and most of that time is doing a Roam export). The Netlify build is over 2 minutes. I wish it were more like 10 seconds total.

The local build would be < 10 seconds if I had direct access to an OPML or JSON feed. Maybe it’s time to reconsider Roam as a blog CMS.