Interactivity and Visualization

Self-portrait (2015)

Interactive web application that uses motion capture data and Markov models to generate new movement data in real time. The animation responds to the user, blurring the boundaries of audience and choreographer. The contrast between the recorded and generated data serve as a metaphor for the parts of ourselves that pull us in different directions.

Kinect2Gesture p5.js

In collaboration with artist Nancy Nowacek, I have created a gestural coding language to be read and interpreted by Kinect2 and neural network computing software by Gene Kogan. The language talks to p5.js to create drawings through code and movements of the body.

ReMotion Suit

In collaboration with industrial designers Evan Huggins and Aaron Nesser, I have created a wearable device designed to communicate movement cues through the body and haptic technology. I wrote the Arduino code for the hardware and developed the user interface in p5.js.

Life Gravity Reducer

This interactive web application attempts to visualize the different factors swirling around to create one's emotional reality. Enter your concerns and sources of joy, along with how important and urgent they are. They will enter your orbit accordingly so that you can visualize the solar system of your life. Click on an item to see your joy expanded and you worries eliminated.

I need-le you, baby.

Web application that explores different representations of the pixel data from your webcam using p5.js. Here are 4 needly interpretations, plus one outlandish portrait using thousands of Elmos and delightful musical accompaniment.

Dances with... well, needles

Despite the playful name, this piece is a serious visualization of motion capture data using calculated values for the first, second, and third derivatives of position in an attempt to access the proprioceptive experience of movement.

Dances with... ellipses

Think of this as an interactive screen saver. Enjoy a dynamic, yet meditative, movement experience. Ellipses respond to the user's mouse movements, gradually speeding up according to a constant gravitational acceleration. Let it run for a while to see a different effect.


ProprioLoop is an interactive motion visualizer designed to train a mover's attention to consciously consider non-visual sensory input in the movement decision-making process. With visuals that amplify and highlight physically sensible differences in movement, such as sudden or sustained changes in momentum, the audience gains access to the more intimate, subjective experience of the mover.

imprint environment

Play around with trails and ghosts with the software used for the piece imprint. With this interactive application, you can choose your own settings to process the live feed from you webcam to include multiple movement echos and imprints.

The above web applications were created in javascript with the P5.js library, with the exception of Imprint Environment, which was created with Max 7.