Data and databases · Edition No. 9 · 3 Sep 2026

simonw/datasette

A web server that opens any SQLite database file as a browsable, queryable website.

← Data and databasesRead the whole edition →
Datasette: browse a database file. Opens a SQLite file as a browsable website.

11.4k stars · Apache-2.0 · 1.0a38 (2026-08-06) · Track this in Rising ↗

sqlite-utils fills the database. Datasette lets you (or, if you point it at the world, anyone) browse and query it.

Verified27 Oct 2026

Radar check

What we found when we opened it. Every bar is one fact, with its date.

Alive100

Last code pushed 23 Oct 2026, 4 days before this check.

Releases85

Latest release 0.65.5 on 16 Sep 2026.

Maturity100

Public since October 2017, about 9 years.

Adoption81

11,524 stars and 937 forks.

Activity85

153 commits and 47 new issues in the last 90 days.

Community100

103 contributors. 37 pull requests merged in 90 days.

Security40

No security policy file says how to report a problem. 6 published security advisories.

Licence Apache-2.0: permissive: use it for anything, keep the notice
How the bars are scored
  • Alive. Days since the last code push: a week or less 100, a month 90, three months 70, six months 50, a year 30, eighteen months 15, older 0.
  • Releases. Age of the latest GitHub release, on a similar scale; no bar when the project publishes no releases.
  • Maturity. Age of the project: eight years 100, five 90, three 70, two 55, one 40, six months 25, younger 10.
  • Adoption. Stars on a log scale: 100,000 stars is 100, 10,000 is 80, 1,000 is 60, 100 is 40.
  • Activity. Commits in the last 90 days: 300 or more 100, 100 85, 30 65, 10 45, any 25.
  • Community. People who have contributed: 100 or more 100, 30 80, 10 60, 5 40, 2 25, one 10.
  • Security. A published security policy 80, none 40; published advisories are listed, not scored.

Checked by Repo Radar on 27 Oct 2026 from the repository on GitHub. Covered in Edition 9.

▶Repo detailsthe review · specs · pros & cons · install

What it does

Datasette points at one or more SQLite files and serves them over the web. It lists the tables, shows the rows, and lets you sort, filter and page through them in the browser. Arbitrary read-only SQL queries can be run from a box on the page. Every table view and every query is a web address, and adding .json to that address returns the same result as data for other programs. Plugins add charts, maps, authentication and full-text search. It is read-only by design, so nothing in the browser can change the data. It does not create or edit rows, it is not a dashboard builder, and it has no access control until a plugin or a proxy adds one.

Why it matters

Who it suits. Anyone who has collected data into a SQLite file and now wants to look at it without writing a program each time — research notes, scraped pages, exports, logs. It is also a quick way to publish a dataset, since a read-only server is a safe thing to expose. Skip it if the data lives in PostgreSQL or MySQL, because Datasette reads SQLite only.

Verdict. Twenty minutes of work for a surprising amount of use, and the natural second half of sqlite-utils (Ed.8 #5) from the same author: one writes the file, the other reads it. The important caution is exposure. There is no authentication out of the box, so anything put on a public address needs a plugin or a proxy in front of it. For charts rather than rows, Evidence (Ed.8 #6) is the better fit. The latest stable release is 0.65.5 from 16 September 2026, with code landing on 12 October 2026.

Stars11.4k
LicenceApache-2.0
Latest1.0a38 (2026-08-06)checked 7 Sep 2026
Written inPython
NeedsPython and pip. Nothing else.
RunsLocally, or behind a proxy on your own server
Summary (Key Points)from the README
Key features
  • Explorable website and API: Turns data of any shape or size into an interactive website with a matching API.
  • Local web server: `serve` is the default subcommand and starts a web interface on port 8001.
  • Browser history example: The README shows running Datasette against Chrome browser history on OS X to browse download data.
  • License and source metadata: A `metadata.json` file adds licensing and source information to the index page, the footer and the API JSON.
  • One-command publishing: `datasette publish` packages one or more SQLite databases into a Docker image and deploys it to Heroku or Google Cloud Run, returning a URL.
  • Datasette Lite: Runs Datasette entirely in the browser using WebAssembly, with no Python web server.
  • Try before installing: A live demo, a video and a GitHub Codespaces option are available.
  • Documentation and community: Comprehensive docs, examples, a newsletter and a Discord server are linked from the README.
Ways to install
Platform or methodWhat it needsEffort
HomebrewA Mac with HomebrewLow; the README calls it the easiest route on a Mac
pipPython 3.11 or higherNot stated
pipxPython 3.11 or higher and pipxNot stated
DockerDocker; the README points to detailed instructionsNot stated
Important
  • Python version: Datasette requires Python 3.11 or higher.
  • Publishing needs a配置 host: `datasette publish` only works if Heroku or Google Cloud Run is configured.
  • Publishing makes data public: Publishing deploys the databases to the internet, so anything in them becomes reachable online.
  • Browser version is limited: Datasette Lite runs in the browser with no Python server, so the README does not describe its feature limits.

Written by an AI model from the project’s README; not part of the review, and it can be wrong.

Good
  • Reads an existing SQLite file directly, with no import step and no schema work
  • Every view is a shareable address, and the same address returns machine-readable data
  • A large plugin set covers charts, maps, search and authentication
Watch for
  • SQLite only; PostgreSQL and MySQL are out of scope
  • No authentication by default, so a public deployment needs one added
  • Read-only, so writing still happens through another tool
Replaces

Nothing paid — it is the missing web UI over data you already have

Works well with

sqlite-utils, which writes the file Datasette reads, and anything that fills it

Install
pip install datasette
datasette research.db --host 0.0.0.0 --port 8001
Screenshots
simonw/datasette: GitHub preview cardsimonw/datasette: Screenshot 1

On Stack Radar: Data & Research › Analytics & Business Intelligence › Dashboards.

Get the next edition in your inbox

A dozen repositories, opened and checked. The licence read, the last release dated, and the ones that did not make it named with the reason. It is the half most lists leave out.

No tracking pixels. One click to leave. The archive stays free either way.

We use your address to send the edition and nothing else. Confirm by email, leave in one click. How we handle it.