Simon Willison has released datasette 1.0a35, a significant update introducing native capabilities for creating and altering database tables directly through the web interface. The release adds a new “Create table” option in the database actions menu, allowing users to define columns, primary keys, custom types, and constraints via a JSON API. It also features a matching “Alter table” action that lets users modify existing structures, including adding or renaming columns and dropping tables entirely. Alongside these functional improvements, the update documents the template context variables available to custom templates, treating them as a stable API until version 2.0. Willison generated this documentation automatically from code definitions and verified it against actual rendered contexts.
This matters because it shifts datasette from a passive data viewer to an active development tool, reducing the need for external scripts or SQL knowledge to manage schema changes. The automated documentation ensures that custom templates can rely on consistent variable names, lowering the barrier for developers building on top of the platform.
- New JSON API endpoints for table creation and alteration
- Automated generation of template context documentation
- Support for NOT NULL constraints and foreign keys




