In the heart of the slums of the Bronx, there lies a legendary figure in the works. Fostered by his neighborhood, he grew, lived, and gained the maddest street cred. This is not this man's story. Instead, the story is about a bunch of silly dorks who wanted to sample Google Machine Learning's cool interface and create something whimsically fun out of it.
The lead developer doesn't even listen to this kind of music.
What it does
lit.tape is a combination of a "literary mixtape". That is, the writing given will be evaluated against criteria and be given a mixtape score. Try out different phrases and see what comes out!
How we built it
lit.tape is run on Flask under Google App Engine. It also uses the Google Cloud Natural Language API to aid in its analysis. Other APIs are used to help analyze the rhyming and structure of the given text.
Challenges we ran into
The vast majority of the time was taken in properly setting up the Google App Engine environment, and its difficulty when setting up a SQL database with Django. Much of the development time was focused on this instead of the actual project, unfortunately.
The other primary challenge is that rapping is more of an intricate art than just regular patterns. More care of the number manipulation should be considered to better reflect this, along with being able to pinpoint better detection of actual good poetry.
The Google Natural Language API also has a limited client library that doesn't grab all the of the JSON information. Better care should be taken place for that.
Accomplishments that we're proud of
It's a demoable project! Something is minimally done! There's also successful usage of Google App Engine and its API. To be able to successfully get input from their database and try to analyze and collect that data is only a plus, especially over the obstacles in organizing the engine.
What we learned
- Using Flask to rapidly develop a lightweight web app.
- How to use Google App Engine
- How to use Google Cloud ML Natural Language API
What's next for lit.tape
- Instead of writing lyrics, accept an audio file too.
- Have more interactivity with the score, especially if it's extremely lit.
- Better analysis.