Work

A collection of projects spanning sound, design, and code.

Nifty Island
Sound

Nifty Island

With Nifty Island, I created over 40 bespoke compositions and over 100 sound effects for different uses within the game. Whether it was fast-paced, casual gameplay, or ambiance and feedback for exploring a menu—I was the one creating it. All songs were created and delivered to the specifications of the client. Some special requests included specific mixing and mastering techniques based on implementation requirements.

Trifecta Interactive
DesignCodeSound

Trifecta Interactive

An interactive 3D audio-visual UI experience featuring spatial sound and scroll-reactive animations built with Three.js and Web Audio API. Each object emits a note of a chord with a listener attached to the camera, creating a spatial audio effect as you navigate the scene. The objects also serve as the filtering mechanism for the portfolio pieces in the immersive version of the website featured on desktop.

Trifecta Interactive VR
DesignCodeSound

Trifecta Interactive VR

A WebXR extension of Trifecta Interactive that places the spatial audio experience inside a fully immersive VR environment. Built with Three.js and the WebXR API, users can enter VR to navigate around the objects and experience spatial audio that shifts naturally with head movement and position.

Animated Ad Campaigns
DesignCode

Animated Ad Campaigns

A portfolio of six animated HTML5 display ad units across standard IAB formats. Each ad is fully self-contained with all CSS and JS inline, performant (only transform and opacity animated), and represents a distinct fictional brand with its own visual identity. All units are under 150KB with no raster images, only CSS shapes, gradients, and inline SVG. Animations respect prefers-reduced-motion with static fallbacks.

Portfolio Sites
DesignCode

Portfolio Sites

Custom portfolio websites built through close client coordination. Each project starts with understanding the client's skillset, goals, and personal brand, then translating that into a tailored web presence designed to highlight their strengths and elevate their work.

Recursive Canvas
CodeSoundDesign

Recursive Canvas

An interactive generative instrument where drawing on a canvas adds new layers onto a living ambient soundscape. Every stroke is both a visual element and a musical voice where position, speed, color, and thickness all map to audio parameters. Meanwhile, autonomous drone and texture layers provide a bed of sound that responds to your activity level. Three systems run in parallel: a p5.js drawing engine captures strokes as living data objects with lifecycles, a mapping layer translates visual properties into audio parameters, and a generative engine runs autonomously underneath. All pitches are quantized to a pentatonic scale, so you can never draw a wrong note.

Diatribe Machine
CodeDesign

Diatribe Machine

A personal blog and writing archive built from scratch with vanilla HTML, CSS, and JavaScript. As a recent addition, generative music plays continuously in the background using Tone.js, scoring every visit differently. Posts range from poetry, opinions to technical writing, all wrapped in a dark, minimal aesthetic.

Sound

Resounds

Game audio re-designs utilizing custom foley and synthesis within Serum 2, followed up by post-processing to provide production-ready audio.

DesignCodeSound

Audio Reactive Visualizers

Audio reactive designs made within TouchDesigner and Max/MSP using Jitter. All featured music produced by myself.

Evil Audio Player
DesignCode

Evil Audio Player

A custom-built web audio player component featuring waveform visualization, playlist tabbing, and audio-reactive ambient glow effects. Built with React, TypeScript, and the Web Audio API, designed to replace third-party embed players with a native solution that matches the aesthetic of any project.