Deep-dive presentations of select projects — demonstrating multi-disciplinary thinking through the Problem → Approach → Solution → Impact format.
Confidential (private membership organization, adult/lifestyle sector)
A private membership organization in the adult/lifestyle sector needed a platform that most standard SaaS stacks quietly refuse to serve; mainstream payment processors and hosts restrict adult-adjacent content, and the data involved (identity verification, vetting notes, health documents, member-to-member messages) is unusually sensitive in a community where discretion is the product, not a feature. I built the platform end to end on Next.js, Supabase, and Stripe, delivering a multi-reviewer vetting workflow, a member portal, and a paid-ticketing system with per-category capacity and a waitlist that only charges a member's card when a spot actually opens. The core vetting, member-portal, and ticketing systems are all shipped and functional ahead of a planned launch, on an architecture that can fail payments over to an adult-friendly processor without a code change.
Personal Product
Brand identity work is notoriously hard to quote, scope can span a single logo brief to a 300-page brand bible, and the difference between a clear-vision client and a stakeholder-heavy organization can double the actual hours delivered. This tool applies a COCOMO-inspired PERT model to brand identity estimation: 26 brand bible sections mapped to complexity points, four EAF drivers, named tier packages, and a self-calibrating coefficient that improves with every completed project. It runs as a zero-dependency HTML file, a Node.js CLI, and a Python CLI; all sharing identical model logic.
Personal Product (Open Source)
Freelancers routinely underbid or overbid because they estimate hours from gut feel, missing the compounding effect of vague requirements, compressed timelines, and revision creep. This tool adapts the COCOMO software cost model to freelance web development, producing defensible, range-based estimates from a structured 13-question intake. It runs entirely offline as a single HTML file, with Node.js and Python CLIs for teams that prefer terminal workflows. A built-in calibration loop lets the model improve after every delivered project.