Simon Willison’s Weblog

Subscribe
Atom feed for datasette Random

1,478 posts tagged “datasette”

Datasette is an open source tool for exploring and publishing data.

2024

Weeknotes: asynchronous LLMs, synchronous embeddings, and I kind of started a podcast

These past few weeks I’ve been bringing Datasette and LLM together and distracting myself with a new sort-of-podcast crossed with a live streaming experiment.

[... 896 words]

Project: Civic Band—scraping and searching PDF meeting minutes from hundreds of municipalities

Visit Project: Civic Band - scraping and searching PDF meeting minutes from hundreds of municipalities

I interviewed Philip James about Civic Band, his “slowly growing collection of databases of the minutes from civic governments”. Philip demonstrated the site and talked through his pipeline for scraping and indexing meeting minutes from many different local government authorities around the USA.

[... 762 words]

Visualizing local election results with Datasette, Observable and MapLibre GL

Visit Visualizing local election results with Datasette, Observable and MapLibre GL

Alex Garcia and myself hosted the first Datasette Open Office Hours on Friday—a live-streamed video session where we hacked on a project together and took questions and tips from community members on Discord.

[... 3,390 words]

Datasette Public Office Hours, Friday Nov 8th at 2pm PT. Tomorrow afternoon (Friday 8th November) at 2pm PT we'll be hosting the first Datasette Public Office Hours - a livestream video session on Discord where Alex Garcia and myself will live code on some Datasette projects and hang out to chat about the project.

This is our first time trying this format. If it works out well I plan to turn it into a series.

Discord event card promoting Datasette Public Office Hours

# 7th November 2024, 7:10 pm / discord, open-source, datasette, alex-garcia, datasette-public-office-hours

Release datasette-examples 0.1a0 — Load example SQL scripts into Datasette on startup

Datasette 0.65. Python 3.13 was released today, which broke compatibility with the Datasette 0.x series due to an issue with an underlying dependency. I've fixed that problem by vendoring and fixing the dependency and the new 0.65 release works on Python 3.13 (but drops support for Python 3.8, which is EOL this month). Datasette 1.0a16 added support for Python 3.13 last month.

# 7th October 2024, 6:07 pm / projects, datasette, python

Release datasette 0.65 — An open source multi-tool for exploring and publishing data

django-plugin-datasette. I did some more work on my DJP plugin mechanism for Django at the DjangoCon US sprints today. I added a new plugin hook, asgi_wrapper(), released in DJP 0.3 and inspired by the similar hook in Datasette.

The hook only works for Django apps that are served using ASGI. It allows plugins to add their own wrapping ASGI middleware around the Django app itself, which means they can do things like attach entirely separate ASGI-compatible applications outside of the regular Django request/response cycle.

Datasette is one of those ASGI-compatible applications!

django-plugin-datasette uses that new hook to configure a new URL, /-/datasette/, which serves a full Datasette instance that scans through Django’s settings.DATABASES dictionary and serves an explore interface on top of any SQLite databases it finds there.

It doesn’t support authentication yet, so this will expose your entire database contents - probably best used as a local debugging tool only.

I did borrow some code from the datasette-mask-columns plugin to ensure that the password column in the auth_user column is reliably redacted. That column contains a heavily salted hashed password so exposing it isn’t necessarily a disaster, but I like to default to keeping hashes safe.

# 26th September 2024, 9:57 pm / projects, sqlite, plugins, djp, datasette, django

Release django-plugin-datasette 0.2 — Django plugin to run Datasette inside of Django
Release django-plugin-datasette 0.1 — Django plugin to run Datasette inside of Django
Release datasette-acl 0.4a4 — Advanced permission management for Datasette
Release datasette-acl 0.4a3 — Advanced permission management for Datasette

Datasette 1.0a16. This latest release focuses mainly on performance, as discussed here in Optimizing Datasette a couple of weeks ago.

It also includes some minor CSS changes that could affect plugins, and hence need to be included before the final 1.0 release. Those are outlined in detail in issues #2415 and #2420.

# 6th September 2024, 5:55 am / projects, datasette

Release datasette 1.0a16 — An open source multi-tool for exploring and publishing data
Release datasette-search-all 1.1.4 — Datasette plugin for searching all searchable tables at once

Calling LLMs from client-side JavaScript, converting PDFs to HTML + weeknotes

Visit Calling LLMs from client-side JavaScript, converting PDFs to HTML + weeknotes

I’ve been having a bunch of fun taking advantage of CORS-enabled LLM APIs to build client-side JavaScript applications that access LLMs directly. I also span up a new Datasette plugin for advanced permission management.

[... 2,050 words]

Release datasette-import 0.1a5 — Tools for importing data into Datasette
Release datasette-search-all 1.1.3 — Datasette plugin for searching all searchable tables at once
Release datasette-write 0.4 — Datasette plugin providing a UI for executing SQL writes against the database
Release datasette-debug-events 0.1a0 — Print Datasette events to standard error
Release datasette-auth-passwords 1.1.1 — Datasette plugin for authentication using passwords
Release datasette-enrichments 0.4.3 — Tools for running enrichments against data stored in Datasette
Release datasette-configure-fts 1.1.4 — Datasette plugin for enabling full-text search against selected table columns
Release datasette-auth-tokens 0.4a10 — Datasette plugin for authenticating access using API tokens
Release datasette-edit-schema 0.8a3 — Datasette plugin for modifying table schemas
Release datasette-pins 0.1a4 — Pin databases, tables, and other items to the Datasette homepage
Release datasette-acl 0.4a2 — Advanced permission management for Datasette
Release datasette-acl 0.4a1 — Advanced permission management for Datasette
Release datasette-acl 0.4a0 — Advanced permission management for Datasette
Release datasette-acl 0.3a0 — Advanced permission management for Datasette