Skip to main content
Being honest, time flies when you’re building a project like this from scratch, and while I’m very proud of what’s here, no project is ever truly “finished”. I had to be very intentional about where to put my energy to make sure the core engine was rock solid. As a developer and technical lead, I’ve learned that knowing when to ship is just as important as knowing how to code. Think of this document as the post-race debrief: we had a 1-2 race, but there’s still more performance to squeeze out of the car before the next Grand Prix. Below is a look at the current limitations and the things I’d be tackling next if we were moving this into a long-term roadmap:

Use Neon via WebSockets instead of HTTP

i18n

a11y

mobile design

ingest

snake game

weekly digest

resend key

profile

workspaces

async delete

better DX on the platform itself

mcp server

Web Worker feasibility

The indexCsv function is a strong candidate for Web Worker offloading — it’s pure, self-contained, and has no DOM or React dependencies. The worker would receive the raw CSV text, build the index, and post back { headers, lineOffsets, totalRows }. The main thread keeps the text reference for getRow() slicing. Next.js supports new Worker(new URL(...)) with webpack 5.