The musical Hamilton swept not only 11 Tony Awards, but also the hearts of millions over the world, including those of our team members. You may not be able to shell out thousands of dollars for a two-hour stay at the Richard Rodgers Theater (and if you are, it never hurts to learn more), so our group is bringing the musical experience directly to your computer screens with Hamilyze!
Hamilyze is an interactive musical experience made possible through data visualization! Users can choose from their favorite Hamilton songs to listen to while they browse its lyrics and are treated to an animated display of visualized trends in lyrical data. The application finds motifs throughout all songs from the soundtrack and displays their frequency and presence in the song. Since the machine learning library we hoped to use was down when we build Hamilyze, we implemented the natural language processing functionality ourselves and we intend to continue work on the project to incorporate more complex analyses.
Hamilyze was a project built at MHacks X, a hackathon at the University of Michigan in September 2017. The time from conception of the idea to a completed website was 36 hours. We built Hamilyze as a web application using React.js, JavaScript, HTML5, and CSS3. Data analysis programs were scripted primarily in Python while animations used Svg.js, a lightweight library for manipulating Scalable Vector Graphics (SVG). A Spotify play button was also installed through the use of the Spotify API.
It was the first time most of our team had built anything using JavaScript and JavaScript data visualization libraries. Both of these have a steep learning curve, but we were successful!
We plan to use machine learning and natural language processing to conduct sentiment analysis, in which we anticipate our program will identify emotional connections to the lyrics and explain them to the listener, or rhyme scheme analysis, for which our program will be able to learn standard sentence structure and rhyming in order to take user input and rephrase it into a rap lyric with a similar meaning.
react.js javascript svg json html5 css3 python spotify svg.js d3.js