Simon Willison created a test harness to explore using the Origin Private File System (OPFS) with Pyodide, with the goal of enabling Datasette Lite to edit persistent SQLite files stored on the user's computer directly in the browser.
Background
- **Simon Willison** is a well-known web developer and creator of Datasette, an open-source Python tool for exploring and publishing tabular data (especially SQLite databases). He regularly experiments with browser-based computing.
- **Pyodide** is a Python runtime that runs entirely in the browser via WebAssembly — it lets you execute Python code on a web page without a server.
- **Datasette Lite** is a browser-only version of Datasette that uses Pyodide, so users can open and query SQLite databases entirely client-side.
- **Origin Private File System (OPFS)** is a modern browser API that gives web applications a private, sandboxed file system for reading and writing files locally — it is faster and more capable than earlier browser storage APIs, and crucially supports synchronous writes, which Python's SQLite library requires.
- The key question here: can Datasette Lite combine OPFS with Pyodide to allow users to open, edit, and save SQLite database files on their own computer, all within the browser? This test harness is a quick experiment (built with the help of Claude Code, Anthropic's AI coding tool) to check what browser support looks like.
HtmlUnit 5.0.0 has been released, now requiring JDK 17 as the minimum version. Key updates include major JavaScript engine improvements, full Web Crypto API support, WebSocket improvements, Web Speech API support, and updated browser profiles for Firefox 150 and Chrome/Edge 148.
Libomemo.js v0.0.1 has been released as an OMEMO cryptographic library for JavaScript. It provides tools for implementing the OMEMO encrypted messaging protocol in JavaScript applications.
JsPlumb, the JavaScript library for building visual connectivity interfaces, has released a major update with a modernized API and new diagram/2D chart engines. The project is now free for non-commercial use, with packages available for React, Angular, Vue, Svelte, and vanilla JS on the public NPM registry.
Datasette-apps is a new system that allows users to bundle and install full applications within Datasette, turning it into a platform for data-driven apps. It enables developers to create self-contained packages combining SQLite databases, metadata, plugins, templates, and assets.