datasette-syntaqlite: adding SQL linting to Datasette

datasette-syntaqlite is a Datasette plugin that augments Datasette’s query editor using syntaqlite. Currently it catches syntax errors and incorrect columns based on available tables and views.

datasette-syntaqlite

You can check out the code here or add it to your Datasette project using uv add datasette-syntaqlite.

I use Datasette on a weekly basis for a lot of my side projects and while data wrangling for my volunteering. I have been wanting to improve the experience for my use cases and syntaqlite’s creator Lalit Maganti’s blog post spurred me to spend a few hours building this tool. Claude (in Zed) wrote a first version I then rewrote. The js part is largely untouched as I am not familiar with how to make it better.

This is a side project but I am interested in pushing it further:

  • Integrating the language server aspect with edit prediction
  • Replacing Datasette’s formatting with syntaqlite’s

Oh and this is unrelated but I’d like to add a Cmd+Enter run query keyboard shortcut like in Metabase which we use at work.

If you want to contribute, feel free to contact me.

The plugin is open-source and Apache 2.0 licensed. Big thanks to Simon Willison and Lalit Maganti for doing the heavy lifting here.