What I've built
Eight projects, each getting an interactive copy you can use here and a page on how it is built and what it costs to run. The ones live so far are linked.
A personal work-and-life dashboard I built to replace my phone: one calm home screen instead of a dozen apps and a social feed. It runs on a module registry (Next.js 15, Drizzle, Neon Postgres) — each tracker is a self-contained module that plugs into a shared shell, so it grows without a rewrite. Every integration sits behind a common connector interface, so the whole app can run on synthetic fixtures instead of live data; an interactive copy of its ranking, running on fixtures, is on this site's Artificial intelligence — Software that performs tasks that normally need human judgment, such as language or image understanding. Projects page.
How it's built →
This site
This Artificial intelligence — Software that performs tasks that normally need human judgment, such as language or image understanding.-powered site: Next.js, FastAPI, and a Claude-backed chat trained on my knowledge base. The agent core also exists as a private extract, agent-core-demo.
How it's built →Ringer
Event-driven Gmail triage with phone and push alerts: Gmail users.watch pushes into Pub/Sub, a FastAPI service classifies each message with Jev and routes it through six tiers, from a Twilio voice call down to label-only.
How it's built →
Butler
A private personal-operations assistant that runs on a home Mac and is driven from an iPhone: root-owned launcher, per-task access control lists, approval bound to a complete Everything an action would send — The account, sender, recipients, subject and body taken together., and a cross-vendor second-opinion reviewer. Built and tested; not connected to a real account.
How it's built →
Drill Room
Timed interview drill environment: timed coding problems with hand-rolled test harnesses, behavioural drills, and an interviewer that never solves.
How it's built →
Kith
A two-user friends-and-households dashboard: people, key dates, facts and hangouts, with an Artificial intelligence — Software that performs tasks that normally need human judgment, such as language or image understanding. capture box that turns freeform notes into confirmed profile updates. Google sign-in with a hard allowlist; Next.js 15, Neon Postgres and Drizzle, Claude Haiku for the capture parser, Progressive web app — A website that can be installed and used like a native app..
How it's built →
Ledger
A swing-trading experiment run through Claude Code and an Model Context Protocol — An open protocol for connecting AI models to external tools and data. server: the repo holds the strategy rules, the trade journal and open-position state, and the broker mechanics learned along the way. Not financial advice.
How it's built →
Phrasebook
Chat-based Punjabi tutor: a Next.js 15 frontend, a FastAPI backend, Claude for the tutoring turns and Postgres for progress.
How it's built →