All projects

Portfolio Query Lab

data-engineeringdashboard

Hero image pending

Situation

Showing SQL and data-engineering skills on a portfolio requires either a live backend (operational cost, attack surface) or a restricted sandbox. Neither is ideal for an always-on public demo.

Action

Embedded SQLite directly in the browser using sql.js (SQLite compiled to WASM). The engine loads once, populates three tables from synthetic portfolio data, and executes arbitrary SQL client-side; zero server required.

  • In-browser SQLite via sql.js/WASM (no backend)
  • Three queryable tables: holdings, monthly_returns, goals
  • Seven preset queries covering aggregation, filtering, and alpha calculation
  • Live SQL editor with syntax-aware results table
  • Schema reference sidebar
  • Demo banner: all data synthetic

Why it matters

  • Proves SQL fluency interactively; visitors run real queries, not just see screenshots
  • Zero backend means zero ops cost and no attack surface for a public demo
  • WASM-based SQLite is the same engine used in DuckDB-style analytical pipelines
  • Preset queries demonstrate aggregation, time-series, and goal-tracking patterns relevant to data-engineering clients

Tech Stack

sql.jsWebAssemblyNext.js 16TypeScriptTailwind v4React 19

Services

Data EngineeringSQL AnalyticsDashboard DevelopmentETL PipelinesPython Automation