Skip to main content
Avatar for Simon Willison from gravatar.com

Simon Willison

Username    simonw
Date joined   Joined

279 projects

datasette-cors

Last released

Datasette plugin for configuring CORS headers

asgi-cors

Last released

ASGI middleware for applying CORS headers to an ASGI application

llm-gemini

Last released

LLM plugin to access Google's Gemini family of models

datasette-enrichments-gpt

Last released

Datasette enrichment for analyzing row data using OpenAI's GPT models

datasette-public

Last released

Make specific Datasette tables visible to the public

datasette-enrichments

Last released

Tools for running enrichments against data stored in Datasette

datasette-extract

Last released

Import unstructured data (text and images) into structured tables

files-to-prompt

Last released

Concatenate a directory full of files into a single prompt for use with LLMs

datasette-embeddings

Last released

Store and query embedding vectors in Datasette tables

datasette-studio

Last released

Datasette pre-configured with useful plugins

datasette-paste

Last released

Paste data to create tables in Datasette

datasette-import

Last released

Tools for importing data into Datasette

datasette-enrichments-quickjs

Last released

Enrich data with a custom JavaScript function

s3-credentials

Last released

A tool for creating credentials for accessing S3 buckets

llm-command-r

Last released

Access the Cohere Command R family of models

llm-nomic-api-embed

Last released

Create embeddings using the Nomic API

textract-cli

Last released

CLI for running files through AWS Textract

llm-cmd

Last released

Use LLM to generate and execute commands in your shell

datasette-write

Last released

Datasette plugin providing a UI for writing to a database

datasette-packages

Last released

Show a list of currently installed Python packages

datasette-export-database

Last released

Export a copy of a SQLite database on demand

datasette-configure-fts

Last released

Datasette plugin for enabling full-text search against selected table columns

datasette-upload-csvs

Last released

Datasette plugin for uploading CSV files and converting them to database tables

datasette-edit-schema

Last released

Datasette plugin for modifying table schemas

llm-claude-3

Last released

LLM access to Claude 3 by Anthropic

datasette

Last released

An open source multi-tool for exploring and publishing data

dclient

Last released

A client CLI utility for Datasette instances

datasette-saved-queries

Last released

Datasette plugin that lets users save and execute queries

datasette-create-view

Last released

Create a SQL view from a query

pypi-to-sqlite

Last released

Load data about Python packages from PyPI into SQLite

datasette-uptime

Last released

Datasette plugin showing uptime at /-/uptime

datasette-sqlite-authorizer

Last released

Configure Datasette to block operations using the SQLite set_authorizer mechanism

datasette-sqlite-debug-authorizer

Last released

Debug SQLite authorizer calls

datasette-expose-env

Last released

Datasette plugin to expose selected environment variables at /-/env for debugging

datasette-tail

Last released

Tools for tailing your database

datasette-column-sum

Last released

Sum the values in numeric Datasette columns

datasette-schema-versions

Last released

Datasette plugin that shows the schema version of every attached database

datasette-scale-to-zero

Last released

Quit Datasette if it has not received traffic for a specified time period

datasette-explain

Last released

Explain SQL queries executed using Datasette

llm-mistral

Last released

LLM plugin providing access to Mistral models busing the Mistral API

datasette-events-forward

Last released

Forward Datasette events to another instance

datasette-auth-tokens

Last released

Datasette plugin for authenticating access using API tokens

datasette-unsafe-actor-debug

Last released

Debug plugin that lets you imitate any actor

datasette-enrichments-opencage

Last released

Geocoding enrichment using OpenCage

datasette-events-db

Last released

Log Datasette events to a database table

shot-scraper

Last released

A command-line utility for taking automated screenshots of websites

llm-sentence-transformers

Last released

Use sentence-transformers for embeddings with LLM

datasette-homepage-table

Last released

Show a specific Datasette table on the homepage

llm-embed-onnx

Last released

Run embedding models using ONNX

llm

Last released

A CLI utility and Python library for interacting with Large Language Models, including OpenAI, PaLM and local models installed on your own machine.

llm-gpt4all

Last released

Plugin for LLM adding support for GPT4ALL models

datasette-granian

Last released

Run Datasette using the Granian HTTP server

datasette-proxy-url

Last released

Proxy a URL through a Datasette instance

datasette-edit-templates

Last released

Plugin allowing Datasette templates to be edited within Datasette

datasette-test

Last released

Utilities to help write tests for Datasette plugins and applications

datasette-cluster-map

Last released

Datasette plugin that shows a map for any data with latitude/longitude columns

datasette-build

Last released

Build a directory full of files into a SQLite database

datasette-search-all

Last released

Datasette plugin for searching all searchable tables at once

datasette-upgrade

Last released

Upgrade Datasette instance configuration to handle new features

datasette-haversine

Last released

Datasette plugin that adds a custom SQL function for haversine distances

sqlite-utils-shell

Last released

An interactive shell for sqlite-utils

django-sql-dashboard

Last released

Django app for building dashboards using raw SQL queries

llm-anyscale-endpoints

Last released

LLM plugin for models hosted by Anyscale Endpoints

ospeak

Last released

CLI tool for running text through OpenAI Text to speech

github-to-sqlite

Last released

Save data from GitHub to a SQLite database

llm-llama-cpp

Last released

LLM plugin for running models using llama.cpp

datasette-chronicle

Last released

Use sqlite-chronicle with tables in Datasette

sqlite-utils

Last released

CLI tool and Python library for manipulating SQLite databases

datasette-leaflet-geojson

Last released

A Datasette plugin that renders GeoJSON columns using Leaflet

datasette-enrichments-jinja

Last released

Datasette enrichment for evaluating templates in a Jinja sandbox

sqlite-chronicle

Last released

Use triggers to maintain a chronicle table of updated/deleted timestamps in SQLite

datasette-statistics

Last released

SQL statistics functions for Datasette

datasette-enrichments-re2

Last released

Enrich data using regular expressions

datasette-pretty-json

Last released

Datasette plugin that pretty-prints any column values that are valid JSON objects or arrays

datasette-sentry

Last released

Datasette plugin for configuring Sentry

sqlite-migrate

Last released

A simple database migration system for SQLite, based on sqlite-utils

llm-python

Last released

Run a Python interpreter in the LLM virtual environment

llm-embed-jina

Last released

Embedding models from Jina AI

datasette-ripgrep

Last released

Web interface for searching your code using ripgrep, built as a Datasette plugin

datasette-llm-embed

Last released

llm_embed(model_id, text) SQL function for Datasette

datasette-remote-actors

Last released

Datasette plugin for fetching details of actors from a remote endpoint

datasette-upload-dbs

Last released

Upload SQLite database files to Datasette

datasette-mask-columns

Last released

Datasette plugin that masks specified database columns

datasette-export-notebook

Last released

Datasette plugin providing instructions for exporting data to Jupyter or Observable

llm-clip

Last released

Generate embeddings for images and text using CLIP with LLM

datasette-sqlite-trace

Last released

Datasette plugin that prints all executed SQL to stderr

blip-caption

Last released

Generate captions for images with Salesforce BLIP

datasette-debug-actors-from-ids

Last released

Datasette plugin for trying out the actors_from_ids hook

datasette-graphql

Last released

Datasette plugin providing an automatic GraphQL API for your SQLite databases

click-default-group-wheel

Last released

click-default-group-wheel is now click-default-group

symbex

Last released

Find the Python code for specified symbols

llm-cluster

Last released

LLM plugin for clustering embeddings

sqlite-utils-move-tables

Last released

Command for sqlite-utils to move tables from one database to another

datasette-visible-internal-db

Last released

Datasette plugin for making the internal database visible for debugging

paginate-json

Last released

CLI tool for fetching paginated JSON from a URL

datasette-jellyfish

Last released

Datasette plugin adding SQL functions for fuzzy text matching powered by Jellyfish

datasette-debug-permissions

Last released

A Datasette plugin that outputs debug information about permission checks

datasette-publish-fly

Last released

Datasette plugin for publishing data using Fly

llm-openrouter

Last released

LLM plugin for models hosted by OpenRouter

sqlite-utils-fast-fks

Last released

Fast foreign key addition for sqlite-utils

openai-to-sqlite

Last released

Save OpenAI API results to a SQLite database

llm-mlc

Last released

LLM plugin for running models using MLC

datasette-render-markdown

Last released

Datasette plugin for rendering Markdown

db-build

Last released

Tools for building SQLite databases from files and directories

sqlite-utils-jq

Last released

Plugin adding a jq() SQL function to sqlite-utils

sqlite-utils-litecli

Last released

Interactive shell using litecli

asgi-replay

Last released

Record and replay ASGI web page loads

sqlite-utils-dateutil

Last released

Date utility functions for sqlite-utils

llm-replicate

Last released

LLM plugin for models hosted on Replicate

llm-mpt30b

Last released

Plugin for LLM adding support for the MPT-30B language model

llm-markov

Last released

Plugin for LLM adding a Markov chain generating model

llm-palm

Last released

Plugin for LLM adding support for Google's PaLM 2 model

ttok

Last released

Count and truncate text based on tokens

strip-tags

Last released

Strip tags from HTML, optionally from areas identified by CSS selectors

pocket-to-sqlite

Last released

Create a SQLite database containing data from your Pocket account

asgi-proxy-lib

Last released

An ASGI function for proxying to a backend over HTTP

datasette-render-images

Last released

Datasette plugin that renders binary blob images using data-uris

datasette-sqlite-url-lite

Last released

A pure Python alternative to sqlite-url ready to be used in Datasette Lite

download-esm

Last released

Download ESM modules from npm and jsdelivr

asyncinject

Last released

Run async workflows using pytest-fixtures-style dependency injection

swarm-to-sqlite

Last released

Create a SQLite database containing your checkin history from Foursquare Swarm

sqlite-history

Last released

Track changes to SQLite tables using triggers

datasette-no-truncate

Last released

Tiny Datasette plugin to disable text truncation in table displays

datasette-chatgpt-plugin

Last released

A Datasette plugin that turns a Datasette instance into a ChatGPT plugin

datasette-atom

Last released

Datasette plugin that adds a .atom output format

datasette-simple-html

Last released

Datasette SQL functions for very simple HTML operations

apple-notes-to-sqlite

Last released

Export Apple Notes to SQLite

datasette-render-html

Last released

Datasette plugin that renders specified cells as HTML

datasette-codespaces

Last released

Conveniences for running Datasette on GitHub Codespaces

datasette-app-support

Last released

Part of https://github.com/simonw/datasette-app

db-to-sqlite

Last released

CLI tool for exporting tables or queries from any SQL database to a SQLite file

datasette-youtube-embed

Last released

Turn YouTube URLs into embedded players in Datasette

datasette-faiss

Last released

Maintain a FAISS index for specified Datasette tables

datasette-openai

Last released

SQL functions for calling OpenAI APIs

datasette-cookies-for-magic-parameters

Last released

UI for setting cookies to populate magic parameters

git-history

Last released

Tools for analyzing Git history using SQLite

json-to-files

Last released

Create separate files on disk based on a JSON object

datasette-auth-passwords

Last released

Datasette plugin for authenticating access using passwords

shapefile-to-sqlite

Last released

Load shapefiles into a SQLite (optionally SpatiaLite) database

datasette-gunicorn

Last released

Run a Datasette server using Gunicorn

datasette-media

Last released

Datasette plugin for serving media based on a SQL query

datasette-secret-santa

Last released

Run a secret santa using Datasette

datasette-render-binary

Last released

Datasette plugin for rendering binary data

datasette-ephemeral-tables

Last released

Provide tables that expire after a time limit

datasette-export

Last released

Export pages from Datasette to files on disk

datasette-indieauth

Last released

Datasette authentication using IndieAuth and RelMeAuth

datasette-copyable

Last released

Datasette plugin for outputting tables in formats suitable for copy and paste

datasette-socrata

Last released

Import data from Socrata into Datasette

json-flatten

Last released

Python functions for flattening a JSON object to a single dictionary of pairs, and unflattening that dictionary back to a JSON object

asgi-gzip

Last released

gzip middleware for ASGI applications, extracted from Starlette

ttml-to-json

Last released

Convert TTML to JSON

webvtt-to-json

Last released

Convert WebVTT to JSON, optionally removing duplicate lines

image-diff

Last released

CLI tool for comparing images

datasette-sandstorm-support

Last released

Authentication and permissions for Datasette on Sandstorm

datasette-render-image-tags

Last released

Turn any URLs ending in .jpg/.png/.gif into img tags with width 200

datasette-sitemap

Last released

Generate sitemap.xml for Datasette sites

datasette-block-robots

Last released

Datasette plugin that blocks all robots using robots.txt

datasette-multiline-links

Last released

Make multiple newline separated URLs clickable in Datasette

datasette-publish-vercel

Last released

Datasette plugin for publishing data using Vercel

datasette-mp3-audio

Last released

Turn .mp3 URLs into an audio player in the Datasette interface

sqlite-diffable

Last released

Tools for dumping/loading a SQLite database to diffable directory structure

s3-ocr

Last released

Tools for running OCR against files stored in S3

datasette-sqlite-fts4

Last released

Datasette plugin exposing SQL functions from sqlite-fts4

sqlite-fts4

Last released

Python functions for working with SQLite FTS4 search

datasette-insert

Last released

Datasette plugin for inserting and updating data

sqlite-comprehend

Last released

Tools for running data in a SQLite database through AWS Comprehend

datasette-ics

Last released

Datasette plugin for outputting iCalendar files

datasette-redirect-to-https

Last released

Datasette plugin that redirects all non-https requests to https

datasette-unsafe-expose-env

Last released

Datasette plugin to expose some environment variables at /-/env for debugging

datasette-low-disk-space-hook

Last released

Datasette plugin providing the low_disk_space hook for other plugins to check for low disk space

mbox-to-sqlite

Last released

Load email from .mbox files into SQLite

datasette-auth-existing-cookies

Last released

Datasette plugin that authenticates users based on existing domain cookies

google-calendar-to-sqlite

Last released

Create a SQLite database containing your data from Google Calendar

datasette-copy-to-memory

Last released

Copy database files into an in-memory database on startup

datasette-gzip

Last released

Add gzip compression to Datasette

datasette-total-page-time

Last released

Add a note to the Datasette footer measuring the total page load time

tweet-images

Last released

Send tweets with images from the command line

geojson-to-sqlite

Last released

CLI tool for converting GeoJSON to SQLite (optionally with SpatiaLite)

summarize-template

Last released

Show a summary of a Django or Jinja template

datasette-auth0

Last released

Datasette plugin that authenticates users using Auth0

datasette-hashed-urls

Last released

Optimize Datasette performance behind a caching proxy

xml-analyser

Last released

Analyse the structure of an arbitrary XML file

datasette-dateutil

Last released

dateutil functions for Datasette

datasette-redirect-forbidden

Last released

Redirect forbidden requests to a login page

google-drive-to-sqlite

Last released

Create a SQLite database containing metadata from Google Drive

datasette-tiddlywiki

Last released

Run TiddlyWiki in Datasette and save Tiddlers to a SQLite database

strip-hidden-form-values

Last released

CLI tool for stripping hidden form values from an HTML document

datasette-leaflet-freedraw

Last released

Draw polygons on maps in Datasette

datasette-pretty-traces

Last released

Prettier formatting for ?_trace=1 traces

stream-delay

Last released

Stream a file or stdin one line at a time with a delay

datasette-hovercards

Last released

Add preview hovercards to links in Datasette

csvs-to-sqlite

Last released

Convert CSV files into a SQLite database

datasette-hello-world

Last released

The hello world of Datasette plugins

datasette-jupyterlite

Last released

JupyterLite as a Datasette plugin

datasette-notebook

Last released

A markdown wiki and dashboarding system for Datasette

datasette-template-request

Last released

Expose the Datasette request object to custom templates

twitter-to-sqlite

Last released

Save data from Twitter to a SQLite database

datasette-import-table

Last released

Datasette plugin for importing tables from other Datasette instances

pids

Last released

A tiny Python library for generating public IDs from integers

datasette-verify

Last released

Verify that SQLite files can be opened using Datasette

evernote-to-sqlite

Last released

Tools for converting Evernote content to SQLite

healthkit-to-sqlite

Last released

Convert an Apple Healthkit export zip to a SQLite database

sqlite-explain

Last released

Derive information about a SQLite query using EXPLAIN

datasette-debug-asgi

Last released

Datasette plugin for dumping out the ASGI scope

datasette-x-forwarded-host

Last released

Treat the X-Forwarded-Host header as the Host header

datasette-query-links

Last released

Turn SELECT queries returned by a query into links to execute them

datasette-pyinstrument

Last released

Use pyinstrument to analyze Datasette page performance

sqlite-transform

Last released

Tool for running transformations on columns in a SQLite database.

datasette-json-html

Last released

Datasette plugin for rendering HTML based on JSON values

datasette-remote-metadata

Last released

Periodically refresh Datasette metadata from a remote URL

conditional-get

Last released

CLI tool for fetching data using HTTP conditional get

asgi-csrf

Last released

ASGI middleware for protecting against CSRF attacks

dogsheep-beta

Last released

Build a search index across content from multiple SQLite database tables and run faceted searches against it using Datasette

yaml-to-sqlite

Last released

Utility for converting YAML files to SQLite

markdown-to-sqlite

Last released

CLI tool for loading markdown files into a SQLite database

datasette-placekey

Last released

SQL functions for working with placekeys

json-post

Last released

Tool for posting JSON to an API, broken into pages

airtable-export

Last released

Export Airtable data to files on disk

datasette-publish-azure

Last released

Publish Datasette instances to Azure Functions

iam-to-sqlite

Last released

Load Amazon IAM data into a SQLite database

tableau-to-sqlite

Last released

Fetch data from Tableau into a SQLite database

c64

Last released

Experimental package of ASGI utilities extracted from Datasette

hacker-news-to-sqlite

Last released

Create a SQLite database containing data pulled from Hacker News

flatten-single-item-arrays

Last released

Given a JSON list of objects, flatten any keys which always contain single item arrays to just a single value

datasette-auth-github

Last released

Datasette plugin and ASGI middleware that authenticates users against GitHub

datasette-block

Last released

Block all access to specific path prefixes

github-contents

Last released

Python class for reading and writing data to a GitHub repository

csv-diff

Last released

Python CLI tool and library for diffing CSV and JSON files

datasette-json-preview

Last released

Preview of new JSON default format for Datasette, see issue #782

higher-lower

Last released

Functions for finding numbers using higher/lower

download-tiles

Last released

Download map tiles and store them in an MBTiles database

datasette-tiles

Last released

Mapping tile server for Datasette, serving tiles from MBTiles packages

datasette-basemap

Last released

A basemap for Datasette and datasette-leaflet

datasette-leaflet

Last released

A plugin that bundles Leaflet.js for Datasette

datasette-template-sql

Last released

Datasette plugin for executing SQL queries from templates

datasette-css-properties

Last released

Experimental Datasette output plugin using CSS properties

datasette-column-inspect

Last released

Experimental Datasette plugin for inspecting columns

datasette-seaborn

Last released

Statistical visualizations for Datasette using Seaborn

datasette-yaml

Last released

Export Datasette records as YAML

sphinx-to-sqlite

Last released

Create a SQLite database from Sphinx documentation

inaturalist-to-sqlite

Last released

Create a SQLite database containing your observation history from iNaturalist

xml-analyzer

Last released

xml-analyzer is now xml-analyser

datasette-edit-tables

Last released

datasette-edit-tables is now datasette-edit-schema

datasette-dns

Last released

Custom SQL function for making DNS lookups

datasette-backup

Last released

Plugin adding backup options to Datasette

sqlite-dump

Last released

An improved version of .iterdump() for sqlite3

datasette-insert-unsafe

Last released

Unsafe permissions for datasette-insert - allows all actions without authentication

datasette-publish-now

Last released

datasette-publish-now is now datasette-publish-vercel

datasette-insert-api

Last released

datasette-insert-api is now datasette-insert

datasette-clone

Last released

Create a local copy of database files from a Datasette instance

datasette-plugin-demos

Last released

Examples of plugins for Datasette

datasette-glitch

Last released

Utilities to help run Datasette on Glitch

datasette-init

Last released

Ensure specific tables and views exist on startup

datasette-allow-permissions-debug

Last released

Always allow access to /-/permissions, for debugging

sqlite-generate

Last released

Tool for generating demo SQLite databases

click-app-template-demo

Last released

Demonstrating https://github.com/simonw/click-app

datasette-plugin-template-demo

Last released

Demonstrating https://github.com/simonw/datasette-plugin

datasette-psutil

Last released

Datasette plugin adding a /-/psutil debugging endpoint

datasette-permissions-sql

Last released

Datasette plugin for configuring permission checks using SQL queries

asgi-auth-github

Last released

ASGI middleware that authenticates users against GitHub

dogsheep-photos

Last released

Save details of your photos to a SQLite database and upload them to S3

photos-to-sqlite

Last released

Save details of your photos to a SQLite database and upload them to S3

datasette-jq

Last released

Datasette plugin that adds custom SQL functions for executing jq expressions against JSON values

datasette-render-timestamps

Last released

Datasette plugin for rendering timestamps

datasette-show-errors

Last released

Datasette plugin for displaying error tracebacks

fec-to-sqlite

Last released

Save FEC campaign finance data to a SQLite database

asgi-log-to-sqlite

Last released

ASGI middleware for logging traffic to a SQLite database

datasette-auth-cookie-api

Last released

Datasette plugin that authenticates users by passing their cookies to an API

datasette-configure-asgi

Last released

Datasette plugin for configuring arbitrary ASGI middleware

genome-to-sqlite

Last released

Import your genome into a SQLite database

datasette-rure

Last released

Datasette plugin that adds a custom SQL function for executing matches using the Rust regular expression engine

google-takeout-to-sqlite

Last released

Save data from Google Takeout to a SQLite database

asgi-debug

Last released

ASGI middleware for debugging ASGI applications

delta-scraper

Last released

Python library for scraping data sources and creating readable deltas

datasette-bplist

Last released

Datasette plugin for working with Apple's binary plist format

validate-utf8

Last released

Python library and CLI for validating UTF-8 text

dbf-to-sqlite

Last released

CLCLI tool for converting DBF files (dBase, FoxPro etc) to SQLite

datasette-vega

Last released

A Datasette plugin that provides tools for generating charts using Vega

datasette-sql-scraper

Last released

Experimental plugin for Datasette

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page