- Add feature to allow users to add their Read Books
- Create a proper Frontend and Backend for the website
- Create Login and Signup Page
- Host the Website
This project is a book recommendation system built using Python, Streamlit, and scikit-learn's Nearest Neighbors algorithm. The system recommends books to users based on various criteria, including publishers, authors, and languages.
You can see the Website here : Link to Website
Before running the application, you need to have the following prerequisites installed on your system:
- Python 3.7 or higher
- Streamlit
- pandas
- scikit-learn
- matplotib
You can install these dependencies using requirements.txt
file in the project directory:
pip install -r requirements.txt
- Clone the repository to your local machine:
https://github.com/manascb1344/Book-Recommender-System
- Change into the project directory:
cd Book-Recommender-System
- Run the Streamlit app:
streamlit run app.py
-
After starting the app, you will see a Streamlit web interface in your browser.
-
Select the "Recommender Type" from the sidebar. You can choose between "Publisher," "Author," or "Language."
-
Depending on your selection, you can further refine your choice by selecting specific publishers, authors, or languages.
-
The app will provide a list of recommended books based on your criteria.
The dataset used for this project includes information about various books, including titles, authors, publishers, publication dates, languages, and average ratings. The data has been preprocessed and cleaned for use in the recommendation system.
The recommendation system uses scikit-learn's Nearest Neighbors algorithm to find books that are similar to the user's preferences. The system filters and sorts books based on the selected criteria (publisher, author, or language) and presents the top 10 recommendations.
Contributions are welcome! If you'd like to contribute to this project, please follow these steps:
- Fork the repository.
- Create a new branch for your feature or bug fix.
- Make your changes and commit them.
- Push your changes to your fork.
- Submit a pull request to the main repository.
This project is licensed under the MIT License - see the LICENSE file for details.
Feel free to customize this README to include more specific details about your project, such as acknowledgments, additional instructions, or any other relevant information.