{"id":21103,"library":"datasette","title":"Datasette","description":"An open source multi-tool for exploring and publishing data, providing a web interface to SQLite databases. Current version 0.65.2, released regularly.","status":"active","version":"0.65.2","language":"python","source_language":"en","source_url":"https://github.com/simonw/datasette","tags":["data-exploration","sqlite","web-api","publishing"],"install":[{"cmd":"pip install datasette","lang":"bash","label":"Install from PyPI"}],"dependencies":[{"reason":"Optional dependency for database management","package":"sqlite-utils","optional":true}],"imports":[{"note":"Direct import of the package; typical usage is via CLI or as a library","symbol":"datasette","correct":"import datasette"}],"quickstart":{"code":"import datasette\nimport asyncio\n\nasync def quickstart():\n    app = datasette.Datasette(files=[\"my_database.db\"])\n    await app.serve()\n\nasyncio.run(quickstart())","lang":"python","description":"Basic usage: create a Datasette instance pointing to an existing SQLite database and serve it."},"warnings":[{"fix":"Use `datasette cloudrun` or consider using `datasette publish fly` for deployment.","message":"In version 0.63, the `datasette publish cloudrun` command was removed. Use `datasette cloudrun` or `datasette publish fly` instead.","severity":"breaking","affected_versions":">=0.63"},{"fix":"Replace `--config myconfig.json` with `-c myconfig.json` or use `--settings`.","message":"The `--config` CLI flag is deprecated. Use `-c` or `--settings` in newer versions.","severity":"deprecated","affected_versions":">=0.60"},{"fix":"Define custom render functions and hooks as async functions (e.g., `async def render_custom(request, datasette)`).","message":"Datasette uses asyncio; calling blocking functions will hang the server. Ensure all custom plugins and hooks are async.","severity":"gotcha","affected_versions":"all"}],"env_vars":null,"search_vec":"'0.65.2':22 'api':31 'current':20 'data':12,26 'data-explor':25 'databas':19 'datasett':1 'explor':9,27 'interfac':16 'multi':6 'multi-tool':5 'open':3 'provid':13 'publish':11,32 'regular':24 'releas':23 'sourc':4 'sqlite':18,28 'tool':7 'version':21 'web':15,30 'web-api':29","created_at":"2026-04-27T16:58:05.768269+00:00","updated_at":"2026-04-27T16:58:05.768269+00:00","problems":[{"fix":"Upgrade to Python 3.9+ as required by datasette; asyncio is part of the standard library.","cause":"Trying to import 'asyncio' which is a built-in module; error occurs if Python is too old (pre-3.3).","error":"ModuleNotFoundError: No module named 'asyncio'"},{"fix":"Verify the database file exists and contains the correct tables using `sqlite3 my.db .tables`.","cause":"Database file does not contain the expected table, or the file path is incorrect.","error":"datasette.exceptions.Error: No such table: ..."}],"ecosystem":"pypi","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":"0.65.2","cli_name":"datasette","cli_version":"datasette, version 0.65.2","type":"library","homepage":"https://datasette.io/","github":"https://github.com/simonw/datasette","docs":"https://docs.datasette.io/en/stable/","changelog":"https://docs.datasette.io/en/stable/changelog.html","pypi":"https://pypi.org/project/datasette/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null,"categories":["web-framework","database","data"],"base_url":null,"auth_type":null,"provenance":{"verified_status":"passing","verified_at":"2026-06-28","last_verified":"2026-06-28","next_check":"2026-07-28","install_tag":null}}