Portfolio
A small selection of some of the projects I've worked on.
Ask The Post AI – Voice Feature
Led front-end development for the voice interface on Ask The Post AI, The Washington Post's generative AI search product. Architected a client-side speech pipeline using the Whisper model running entirely in the browser via Web Workers, keeping audio processing off the main thread to preserve UI responsiveness during transcription. Built the full interaction layer in React and TypeScript, handling microphone permissions, recording state, real-time feedback and error states across browsers.
Tech: React · TypeScript · Next.js · Web Workers · Whisper · Audio Worklets · Speech Recognition · AI Models
La Lista DMV
A full-stack cultural events platform for the DC, Maryland and Virginia Latino community, self-hosted on a VPS. Built a responsive UI in React and Tailwind CSS, aggregating event data from multiple sources into a structured feed. Integrated the Ticketmaster API to automatically surface local concerts and built a custom admin dashboard for quickly generating Instagram posts for upcoming events. Used Payload CMS to give non-technical admin members control over content without touching code.
Tech: Payload CMS · TypeScript · React · Next.js · Tailwind CSS · shadcn/ui · Ticketmaster API · Node.js · VPS
Astro Starter Template
A modern starter template combining Astro v5, shadcn/ui, Tailwind CSS v4 and Biome.
I kept setting up the same stack for every new project so I turned my go-to setup into a reusable template. It's mostly for myself but available for anyone to use.
Tech: Astro v5 · TypeScript · React 19 · Tailwind CSS v4 · shadcn/ui · Biome
Loteria
A free multiplayer game based on the classic Mexican bingo game.
While looking for a Loteria game online, I could not find many good options so I decided to build one. To give the game a modern look, I also used AI to generate "realistic" versions of the original card images.
Tech: WebSockets · TypeScript · React ·Vite · Tailwind CSS · shadcn UI
The Verge Redesign / Duet
Helped develop the new redesign of The Verge site and Duet, Vox Media's new frontend platform. A platform with the goal of supporting all of Vox Media's publications.
Tech: TypeScript · React · Next.js · Tailwind CSS · Relay
La Palabra
An open-source game inspired by the famous game Wordle. Purpose of the game is to guess the word (based on Bad Bunny lyrics) in 6 tries and includes a link to the Spotify song the word appears in to help in figuring out the word of the day.
Tech: React · Next.js · Tailwind CSS
Starter Notion blog template
An open-source starter blog template that is statically generated with Next.js, content powered by Notion and styled with Tailwind CSS.
Tech: React · Next.js · Tailwind CSS · Notion API
The Washington Post Custom Project Template Generator
A Node, React and Next.js based template that powers all of the custom interactive projects at The Washington Post. Still used today.
Tech: Node · React · Next.js
Mueller Report Illustrated
An award-winning six-part interactive series on the obstruction investigation with audio and scrolling animations.
Tech: React · React PLX · ffmpeg · Node · Next.js




