Inspiration: As recent high-school graduates, we realized that the K-12 English curriculum places a heavy emphasis on books about the American dream, American identity, and wars that the U.S. has fought in. However, we know that there are other books about different cultures written by authors of diverse ethnicities and religions that deserve attention. We made a Discord bot and hoped to educate users about these topics so they can gain a richer understanding and appreciation for people of different backgrounds.

What it does: First off, we chose Discord because of its popularity among students, especially after the switch to virtual learning. The user uses a prefix ('#') and then types either "random" or a topic of their choice, depending on what they want their book recommendations to be about. When the "random" option is chosen, the bot dispenses book titles on topics of different cultures, social activism and injustice. Three books are recommended based on relevance, and another three are recommended by their rating on Google Books.

How we built it: We connected to the Discord and Google Books APIs using JavaScript with node.js.

Challenges we ran into: Some of our challenges included making the bot interactive, as we realized we couldn’t prompt the user. We also had issues with the bot listing out the book suggestions in order of highest rating/reviews, because some books did not have a rating on Google Books.

Accomplishments that we're proud of: This was our first time using javascript, connecting to APIs, and creating Discord bots, so we are proud we made a bot that functions the way we intended it to.

What we learned: Everything we now know about APIs, Discord bots, and JavaScript comes from what we learned this weekend while working on our project.

What's next for Book-Bot: In the future, we want to present the authors name and book descriptions along with the book title, and perhaps even allow the user to search using the authors name instead of just book titles. We would also add links to each title so the user can quickly learn more about a book if they are interested.

Built With

Share this project:

Updates