React | p5.js | Web Audio API | Google Drive API
Sonic Blooming is a guided meditation on the sound of movement, growth, and transformation in our environments both external and internal. At the time of year when the roses in the the International Rose Test Garden are beginning to bloom, plants are generating more energy than usual. For this project fellow developer Jena Boehm and I were commissioned by my friend and fellow whateverSpace co-founder Crystal Cortez to create and design a website that visiters of the Portland International Test Garden can use to vibe with compositions created from various plants electrical impulse data read by sensors in a process called "Biodata Sonification". Crystal has translated these impulses into musical pitches and sound that make up half of the composition you will hear. The other half of the composition is made up of field recordings she has collected in the space over time. Soundwalkers are encouraged to dive deep into these soundscapes as they explore each garden and they also can upload sounds they hear and upload it on our site to a shared folder via the Google Drive API. These uploads will then be incorporated into new tracks over the course of the month. There's also a cool audio visualizer on the page created with P5js and the Web Audio API. This project was sponsored by ThirdAngleMusic and Portland Parks and Recreations
Vue.js | Nuxt | Apollo | PostgreSQL | GraphQL | TensorFlow | Sanity
frqncy is a commercial web application that uses WebRTC to create virtual video chat rooms with friends to watch concerts together, buy merchandise and virtually interact with bands. I developed a robust system that uses machine learning to detect claps and cheers that broadcasts the audio and sends data to be used by lighting and visual effects artists in venues. I also worked on frontend and backend elements of the page to create a seamless web interface for audience participants along with day to day decision making to build the app from the ground up.
React | Express | PostgreSQL | Node.js | Cheerio Scraper
Built after the wildfires on the west coast in 2020 happened, I was trying to think of ways to help out people using my web development knowledge. The idea I came up with is simple and builds on the platform GoFundMe has already built. I wanted to create a space that let's people browse all of the current wildfire funds on the West Coast to learn more about about individuals and communities in need. You can can see detailed information about each fund and when you're ready can go directly to that funds GoFundMe page to donate. What makes the site a bit different is that I wanted to ensure funds that are the furthest from reaching their goal make it to the top of the page. That's why when you will always those who still need the most relief at the top of the page. The site scrapes GoFundMe twice a day and updates our database to reflect the latest information. What's great about this project is it is reusable for any type of GoFundMe campaign by just inputting a URL on our backend.
React | Web Audio API
In browser JavaScript/React based musical synthesizer that can be controlled using a computer keyboard, mouse, touch or a MIDI controller. Users can add effects chains in any order and share patches with other users. Made with the Web Audio API. The app is responsive and can be used on any device that has a browser. I created the global state provider that is used throughout the site, created basic synth playback, implemented MIDI input, and created the oscilloscope.
React | TensorFlow | Magenta | ml5 | Web Audio API
Shapeways is a multimedia sandbox at the bleeding edge of art and technology. It's a real-time music and art generator that responds to your movements. It's an audiovisual composition shaped by the user, made possible by machine learning.
React | Express | MongoDB | Node.js | QUnit
Alcherithm is designed to be a JavaScript coding companion to help junior software developers learn and practice various code challenges. My team and I developed a learning platform that combines resources, videos and documentation to help developers build up a foundation in code. Users can code live in the browser and have that code checked against tests using QUnit. I wrote the user authentication for the front and back end and implemented a global state provider to share data to our various modular components, along with a lot of the design and conditional rendering in the app.
React | Express | MongoDB | Node.js | Google Drive API | Dropbox API
A simple file repository solution that allows artists to collate their latest music files stored on Google Drive, Bandcamp, Soundcloud and Dropbox into a single-location to share, listen and collaborate with others. I was largely the system architect for this project. Primarily coded the React front end with focus on state management, sourcing music from multiple APIs, creating a playlist, and displaying details of a playlist. I also created the models for MongoDB on the backend
React | Express | PostgreSQL | Node.js | Google Maps API
Rooted from popular shared spreadsheet amongst a community of artists, airSupply collects artist residencies and grants from around the world and makes them easily accessible by search parameters, Google Map marker, and residency / grant type. I championed this idea for this project to help it come to light and also setup the postgres database/general SQL search guidelines to help user navigation as well as designing and implementing our front end using React.
React | Express | PostgreSQL | Node.js
A compilation of organizations seeking financial assistance to support their communities through COVID-19. The COVID-19 Aid Funds site is designed to help donors with a little extra income support groups or sectors likely to suffer significant financial consequences because of the COVID-19 pandemic and its necessary mitigation measures. This is a crowd-sourced list. This site was created over a weekend with a small team of developers. I was largely responsible for the backend and SQL database
React
A proof of concept app that allows you to search for an artist, display their releases, select songs, and view lyrics. This was written using class based components in React and hit multiple APIs to pull in information.
React
This is the site you're on right now, how very meta. I've been wanting to build a portfolio site for years to showcase all the things I'm involved in / projects I'm working on. Now, here we are. Built from scratch in React, a pretty straightforward build. Used a JSON data file for all the content which made things a lot more organized and easy to update. Not surprisingly, most of the time and effort went into making the css play well on multiple devices.
JavaScript | HTML | CSS
Our first attempt at a browser-based musical instrument. It can be controlled using a computer keyboard or a MIDI controller. Made with the Web Audio API and written completely in vanilla JavaScript. I championed the project and wrote basics to get the synth to function, implemented MIDI, created the oscilloscope, and wrote algorithms for some basic effects. This app has been deprecated and improved exponentially by whateverSynth.