Check out our API for a demo

Download the PerplexAlexa skill to play the game

This application was made possible through the use of the Datamuse API


We were inspired by the works of famous poets and rappers like Eminem, Robert Frost, Dr. Seuss, and Snoop Dogg Lion.

What it does

Ask Alexa to Rap Battle and she will respond to any line you give her with a line with the same syllables that you just said that rhymes with your line and tries to maximize the amount of sense that she makes. She can also write her own poem for you, and intentionally misunderstand you as a prank.

How we built it

We built a rest API with Flask that is hosted on EC2 to use with AWS Lambda. The backend is done in Python and utilizes Natural Language Processing tools like NLTK and Datamuse.

Challenges we ran into

The English language is quite complex. We had to make sure our rhyming functions were robust so that Alexa will be able to continue a rap if she has to rhyme with "orange."

It was also our first time developing for the Amazon Echo, so there were some challenges in implementing that aspect of the project.

Accomplishments we're proud of

We have built a god-tier rapper.

Also, she punintentionally makes puns sometimes which is pretty awesome.

What's next for PerplexAlexa

We end up making a lot of HTTP requests in order to run the program which is slowing down the app a lot. With more time, we would do our own natural language processing of the google n-gram data instead of relying on the Datamuse API. This would also open us up to getting predictive text from any source of data. We could have a bunch of different options for the rap style from Shakespeare to Fetty Wap.

Share this project: