Back to browse
ColumnLens – Query millions of rows in milliseconds on your Mac

ColumnLens – Query millions of rows in milliseconds on your Mac

by hilti·Mar 10, 2026·3 points·1 comment

AI Analysis

●●●BangerSlickSolve My ProblemWizardry

DuckDB-powered desktop app queries 5GB CSVs locally in seconds without cloud uploads.

Strengths
  • Native C++ and DuckDB enable sub-second queries on 12M rows.
  • 3D city visualization offers unique spatial data exploration for telemetry.
  • Lua scripting allows automatable analysis workflows without leaving the app.
Weaknesses
  • $49 Pro price might deter hobbyists compared to free DuckDB CLI.
  • Windows and Linux support unclear as landing page emphasizes Mac exclusively.
Category
Target Audience

Data analysts, security researchers, and engineers working with large local datasets

Similar To

Datasette · DBeaver · Tableau

Post Description

We keep shipping data to the cloud to analyze it, but modern Macs have enough horsepower to query millions of rows locally in milliseconds. Even an 8GB MacBook Neo.

I built ColumnLens because I wanted to stop uploading sensitive data to SaaS tools just to run a GROUP BY. It's a native C++ desktop app that opens 5GB+ CSV, JSONL, Parquet, and Excel files in about 3 seconds, then lets you query them with DuckDB's full SQL engine — JOINs, CTEs, window functions, all running on your machine.

The idea is simple: your laptop is a perfectly good analytics workstation. You shouldn't need a cloud pipeline to look at your data.

Some things I learned building it:

- DuckDB's columnar engine is absurdly efficient. 12M rows, sub-second queries, under 1 GB RAM. On hardware that fits in a backpack.

- ImGui + OpenGL is a great stack for data-heavy desktop apps. No DOM, no layout engine overhead — just raw GPU rendering. The data grid scrolls 12M rows without a single frame drop.

- I added a "3D City View" that maps rows to buildings (height = one column, color = another). Sounds gimmicky, but outliers and clusters are immediately visible in ways they aren't in tables or charts. Our brains are good at spotting the tall building in a skyline.

- Lua scripting turned out more useful than expected. People write small scripts to fetch data from APIs, run queries, and configure charts — repeatable analysis without leaving the app.

- Everything runs locally. Zero telemetry, zero network calls. The binary is 33MB, statically linked.

Free download at https://columnlens.com

Would love to hear from anyone else building local-first data tools — I think the "ship everything to the cloud" era is starting to swing back.

Similar Projects

Developer Tools●●Solid

Sheetz – Java Excel/CSV: one-liner API and million-row streaming

Sheetz literally reduces Apache POI boilerplate to Sheetz.read(...) / Sheetz.write(...), and it pairs that convenience with annotation-based mapping, a fluent multi-sheet builder, built-in streaming for million-row files, and row-level validation. It doesn't invent a new category—EasyExcel and POI already exist—but the one-line API, examples, and Maven releases make it an attractive, pragmatic choice when you need spreadsheet import/export without wrestling with workbook plumbing.

Solve My ProblemNiche Gem
gchitrapradha
113mo ago
Data●●●Banger

HN-fdw – All of Hacker News, queryable from Postgres, with zero copies

Zero-copy Postgres queries against 47M rows using DuckDB FDW and HTTP range requests.

WizardryBig BrainDark Horse
tamnd
202mo ago