MDBS - My Digital Bookshelf
Aug 2026

AI wrote every line of this one. My ebook library was eating my cloud storage, so I built my own. My first instruction was to store the files inside a SQL database, and the AI would have happily done it. Catching that, and moving files to object storage with only metadata in the database, shaped the whole architecture. The AI could build it in minutes. Knowing the first design was wrong was still my job.

Next.js TypeScript Cloudflare R2 Neon Postgres Prisma Vercel Claude Code
Live app ↗
stratLens - AI Strategic Analysis Platform
Jan 2026

I wanted a tool that could generate real strategic analyses - not summaries, but the structured frameworks that consultants actually use. So I built one. stratLens takes a company and produces SWOT, Porter's Five Forces, BCG Matrix, McKinsey 7S, and eight other frameworks, backed by live data from financial APIs and news sources. Supports three AI providers with a bring-your-own-key model so no one's API keys are stored in plaintext.

Next.js 14 TypeScript PostgreSQL Prisma D3.js Claude API OpenAI Clerk Auth
Live app ↗
Hedwig - Daily News Briefing
Feb 2026

Every morning I want to know what's happening in tech, politics, business, military, and a few other corners of the world - without spending an hour on it. Hedwig does that. It pulls from over twenty sources, uses Claude to summarize and curate, attaches source reliability ratings, and emails me a 20-30 minute digest at a time I chose. Automated via GitHub Actions. I've used it every day since I finished it.

Python Claude API GitHub Actions pytest Jinja2
Dear Diary - Full-Stack Journal
Jan 2024

A personal journal application I built to learn the full-stack workflow before building anything more ambitious. Authentication, full-text search, responsive design. The point of entry into everything that came after.

Next.js 14 TypeScript PostgreSQL Prisma NextAuth
Live app ↗
SwiftER - AI Patient Management Platform
Nov 2023 - Apr 2024

A USC class competition that turned into a six-month product development exercise. SwiftER was an AI-assisted ER management platform designed to help clinicians handle lab orders, patient flow, and communication more efficiently. I led a five-person team through user research with healthcare professionals, competitive analysis against existing EHR systems, financial modeling, and a validation partnership with a hospital in Japan. We reached the semi-finals of the Min Family Challenge for Healthcare Innovation.

Product Management User Research Financial Modeling Competitive Analysis GTM Strategy
ML Classification, Regression & Clustering
Jan 2026

Three coursework projects for NUS's Machine Learning module covering the end-to-end workflow. Earthquake damage classification from seismic feature data, insurance premium regression with regularization, and customer segmentation using K-Means. The point was less about the models and more about learning to make decisions at every step of the pipeline - what to clean, what to encode, when the accuracy number is lying to you.

Python pandas scikit-learn matplotlib Jupyter