Memex is the open-source template behind this weblog: a research site where every article is a node in a graph, not an entry in a feed. It is named after the Memex Vannevar Bush described in 1945, a desk for storing, linking and retrieving everything a person knows.

A chronological blog can’t say that one article builds on another, or that a third disputes its premise. It can’t arrange five pieces into a reading path that makes an argument. Memex stores those relationships as data.

Five models hold the structure. Articles are the visible layer. Tags cut across the corpus. Threads are curated reading paths, each organised around a research question, with a note on why every article is there. Lineage links are typed relationships between articles: builds on, challenges, extends, supersedes, applies, evidences. A hyperlink says another page exists. A lineage link says why it matters. Shelves sort the work by maturity: Research, Systems, Creative Systems and Archive.

The same data serves seven readers: HTML for people, RSS for feed readers, graph.json for knowledge tools, a Datasette SQL interface for researchers, llms.txt for language models, agents.md for autonomous agents, and a sitemap for search engines. A research observatory page lays out the thesis, its questions and the threads that answer them, and a D3 graph draws every lineage link.

Read how this weblog is built.

Stack: Django 6 · Postgres or SQLite · python-markdown · Datasette · D3.js · Mermaid.js · WhiteNoise · Gunicorn Status: Open source, released April 2026 with demo content (four articles, lineage links and a thread). nedkarlovich.com runs on the same architecture. GitHub