Front-End Developer
HTML | CSS | JavaScript | React JS | Node.js | MongoDB | Express JS
Song Notes is an application I began developing in January of 2023. Essentially, it is a note-taking application for songwriters. The idea was sparked when I noticed how one of my frequent music collaborators (D Smoke) would share ideas with me. When we would work on music together (mostly remotely), he would always send me a demo recording as well as the lyrics written out in a note. This allowed me to provide more comprehensive feedback, and improved workflow. I thought that other writers would find it helpful if there were a browser-based application that allowed other creatives to organize their ideas in this way. That is where the idea for “Song Notes” was born. I created a rough design of the user interface using Sketch, and began writing the code shortly thereafter.
The application was developed using React.js (Create React App) for the front-end, Node.js and Express.js for the back-end server, and MongoDB for data storage. The project presented a few new challenges, one being recording audio in the browser. To simplify interacting with the Web Audio API, which can be a bit confusing, I implemented RecordRTC.js, part of the WebRTC JavaScript library for audio/video recording. Finding a working library required a lot of research, as most available libraries for recording browser audio rely on a method that was recently deprecated.
This project pushed me to learn new skills, such as working with a Node.js runtime. It also allowed me to expand my knowlege of React, as well as introduced me to working with Blobs/binary data. Overall, the application allowed me to blend my creativity and technical ability in a way that solves a real-world problem. Currently, I am working on the back-end API to allow users to create accounts and save their sessions. In the meantime, I have made the front-end available for demo purposes.