Inspiration
What inspired us to create Page was the indecisiveness that comes along with trying to find a new book to read. Online book content creators have different personal tastes when it comes to books and sometimes when trying to find a recommendation, you just want a tool that can decide for you with no biases.
What it does
Page is a flask web application that can provide book recommendations through various filtering mechanisms. It can offer the user a completely random book, a book recommendation by genre, and if the user inputs the title of a book they enjoyed, then it can recommend them multiple books that are similar.
How we built it
Page was built using a combination of Flask for the backend and HTML, CSS, and JavaScript for the frontend. In the backend, we integrated Google Books API to fetch book data and generate recommendations. To handle and process user input, along with generating similar books, we utilized the Natural Language Toolkit (NLTK) library in Python. We calculated TF-IDF vectors for book description and computed cosine similarity scores to recommend books that were similar to the user's input.
Challenges we ran into
We ran into many challenges throughout the development process. We were both relatively new to Python and have had no previous experience with NLTK. It was a struggle integrating the Google Books API into the application and trying to figure out how to recommend similar books. We had to be flexible and many times change the requirements of Page.
Accomplishments that we're proud of
We're proud that for our first hackathon, we were able to deliver some type of working project, even if its not exactly what we envisioned! We gained experience in new technologies and have a wider understanding of Python and recommendation systems in general.
What we learned
Like we previously said, we learned many new technologies. We have gained experience in Python programming and Flask. We learned about UI design through HTML, CSS, and JavaScript. We learned about Natural Language Processing with NLTK and how to better integrate APIS into our projects.
What's next for Page
We would love to improve the overall UI design and implement a more chatbot experience with Page.
Built With
- css
- flask
- github
- google-books-api
- html
- javascript
- nltk
- python
- scikit-learn
Log in or sign up for Devpost to join the conversation.