Starlette 1.0 has been released, marking a major milestone for the Python ASGI framework that underpins FastAPI. Simon Willison explores the key breaking changes in 1.0, notably the new lifespan context manager replacing on_startup/on_shutdown hooks. He then demonstrates using Claude's 'Skills' feature to generate a skill document from the Starlette 1.0 GitHub repo, enabling Claude to produce correct 1.0-compatible code despite its training data predating the release. The result is a working task management app (with projects, tasks, comments, and labels) built by Claude using Starlette 1.0, aiosqlite, and Jinja2 — with Claude also writing and running its own tests.
Sort: