Inspiration

The Eras Tour is coming up in Miami and all the Swifties that are going to the show are wondering "What will be the Surprise Songs for my show?". With the Swiftie Bot, you can practice your Taylor Swift lyric knowledge to the test and get prepared for the concert!

What it does

The Swiftie Bot allows any Swiftie on Discord to have a fun way to put their Taylor Swift song and album knowledge to the test.

Supported commands:

  • !help Gives you the help docs for Swiftie Bot!

  • !scoreboard Shows the scoreboard for the top 10 users by points in this server.

  • !practice Start practicing any difficulty! You will NOT earn points for correct answers.

  • !practice [difficulty=easy,medium,hard] Same as !practice in easy you get 3 lyric lines, medium you get 2 lyric lines, and hard you 1 lyric lines.

  • !play Start playing! You WILL earn points for correct answers!

  • !play [difficulty=easy,medium,hard] Start playing! You WILL earn points for correct answers!

  • !guess album [album] Guess an album. This must be preceded by a !practice or !play

  • !guess song-album [song] - [album] Guess a song and album. This must be preceded by a !practice or !play

  • !guess song [song] Guess a song. This must be preceded by a !practice or !play

How we built it

  • Language: Python
  • Python Libraries: Discord, MongoDB, BeautifulSoup
  • Web Scraping: Used BeautifulSoup to web scrape lyrics, line-by-line for all Taylor Swift songs on Genius.com
  • Logic designs: Upfront design of what commands we wanted to support and how they would work
  • Deployment: docker and railway

Challenges we ran into

  • Web scraping was tedious
  • Message parsing, validation, and analysis was also tedious
  • The WiFi was very slow at processing command`s, there's a ton of people here

Accomplishments that we're proud of

  • Our first hackathon
  • Our first discord bot
  • Our design for how it works is efficient
  • We all learned A LOT!

What we learned

  • How to connect a database like MongoDB to python
  • How to use the Discord python library
  • How to scrape a website
  • Message parsing, validation, and analysis

What's next for Swiftie Bot

  • Expand Swiftie Bot to work for any music artist like Bad Bunny, J Balvin, Rauw Alejandro, Ariana Grande, Justin Bieber, and more!
Share this project:

Updates