Lopecode: Self-editing, humanely embeddable Observable notebooks

https://tomlarkworthy.github.io/lopecode/webpage.html

Tool by Tom Larkworthy (2025)

Announced by Chris Shank in this Bluesky posting

The hermetic, self-hosted, self-sustainable, recursively exportable, offline-first, file-first, web-based reactive open-source programming substrate built on observable runtime is online finally!

The editing experience is not there yet. Probably wiser to fork the original Observable notebook if you seriously want to create a webpage.

Exciting environment that contains many things I want - self-hosted self-editing, reactivity and internal module resolution.

Additional Resources

Metadata

3 Likes

Just noticed, the first link in the top post leads to 404 Not Found.

Looks like the correct URL is now:

From the overview, the Lopecode Tour is a great introduction, a self-explaining dynamic notebook with many examples.

I learned it’s based on the Observable Runtime, which itself seems like a good example of a malleable software system. I’m still trying to understand where the runtime ends and where Lopecode starts, what features the latter adds.


Found a recent talk about Lopecode (June 2025, ~14min) by the author, Tom Larkworthy, as part of a Future of Coding virtual meetup with other presenters.

Lopecode — a reactive dataflow, zero-dependency, literate live-coding dataviz microkernel, offline-first notebook with hot reloading, ecosystem-compatible with Observable, that serializes to a single HTML file

My (possibly wrong) impression is that the author uses the term “runtime” in a somewhat unusual sense. For me, this would be just the Observable execution engine, i.e. a bunch of code. But Tom uses “runtime” as a part of working memory.

Overall, Lopecode looks very Smalltalk-y to me, with the Observable runtime (just the code) acting as the VM. All of Lopecode is stored in each notebook file, which thus takes the role of a Smalltalk image.