csvQL

SQL for spreadsheets, in the terminal.

Go · Bubble Tea · sqlparser · excelize · Source on GitHub

The problem

A lot of real data lives in CSV exports and Excel workbooks. Answering a quick question about one usually means opening a spreadsheet app and clicking through filters, or writing a throwaway script. I wanted to point SQL at the file and ask.

What I built

csvQL’s terminal UI: a sales table with monthly columns, a side panel showing the selected cell, the inferred schema and the loaded tables, and a SQL query being typed with an autocomplete suggestion.

csvQL is a terminal app and CLI that loads CSV files, whole directories of them, or every sheet of an .xlsx workbook as tables, then runs SQL against them. The interactive mode is a full-screen terminal UI: a data grid with virtual scrolling, a query bar with autocomplete for tables, columns and values, and a side panel that shows the selected cell, the inferred schema and the loaded tables. One-off queries also run straight from the command line.

Key decisions

What I’d do next

← All projects