Portfolio

A small selection of some of the projects I've worked on.

Ask The Post AI – Voice Feature

Developed the voice feature for Ask The Post AI, a generative AI search app that lets users ask questions about the news or catch up on the latest. Using Transformers.js and Web Workers, I loaded AI models client-side to recognize and transcribe speech to text, then worked with the backend team to communicate with the Post AI. I also used Web Workers with Audio Worklets to visualize the AI's audio response, making it appear as if it's visually speaking.

Tech: Transformers.js · Web Workers · Audio Worklets · Speech Recognition · Next.js · React · TypeScript · AI Models

La Lista DMV

A cultural events platform for the DC, Maryland & Virginia Latino community.

I built La Lista DMV because finding local Latino cultural events meant scrolling through dozens of Instagram accounts and group chats. La Lista brings it all into one place so the community never misses what's happening nearby.

Tech: Payload CMS · TypeScript · React · Next.js · Tailwind CSS · shadcn UI

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