cis3296f24 / Section4-ProjectPresentation

cis3296f24-classroom-project-presentation-ProjectsFeedbackBoard-template created by GitHub Classroom
0 stars 0 forks source link

Open Page - Book Recommender #8

Open wSimsT opened 2 days ago

wSimsT commented 2 days ago

Project Abstract

This document proposes an easy way to find new reads. Based on the user’s interests and past books, this project will be able to find a new piece of literature for the user to enjoy. This project will help promote the use of free libraries and authors.

Conceptual Design

This project will use Java and the open library APIs (Developer Center / APIs | Open Library) in order to connect the user to any possible book recommendations. We also will be utilizing a GUI for the interface, Java Swing is currently the top contender for this. There will be no hardware component included. The software architecture should have a main class where the GUI is called and main logic is held. Then there will be a secondary class for “bookshelf” which contains all the information for the User’s past reads, and a “Reader” class which keeps the information about the user so we can verify them for future uses of this program.

Proof of Concept

Link: https://github.com/wSimsT/Open-Page.git

This code was made in VS Code through the SAPMachine JDK which equates to the JDK 23 version on Windows 11. This is a very rough proof of concept which integrates Java Swing, Java, and the Open Library APIs in order to print to the standard output a list of book recommendations based on a genre of the user’s choice.

Background

This product will obtain information from the user in order to help make a better recommendation over time. It will collect the user’s past reads in order to make an educated guess on what sort of books they like best. I was able to find two similar projects online: https://github.com/Shantanuh10/Book-Recommendation-System.git and https://github.com/nikhilbordekar/Book-Recommender-System.git. Both of these projects utilize python in their development and attempt to train a machine learning algorithm with the data they collect from the users. Neither of them seem to be using an API to find books and the second uses a CSV file to instead contain a dataset. In this way, our project is different and has the possibility to have more options for works of literature given that the API dataset is maintained.

Required Resources

The required resources should include the team that will be working on this project, the access to the APIs, access to the internet and other training materials, a method of connecting and conversing with the group, and a JDK for developing in Java.

Open Page Slide.pdf