{"id":27974164,"url":"https://github.com/ziraddingulumjanly/book-recommender-app-via-python","last_synced_at":"2025-05-08T00:12:19.878Z","repository":{"id":291465257,"uuid":"977706144","full_name":"ziraddingulumjanly/Book-Recommender-App-Via-Python","owner":"ziraddingulumjanly","description":"An interactive Book Recommendation System built with Streamlit, powered by collaborative filtering using cosine similarity on real-world user rating data.  🐳 Now Dockerized for easy deployment and consistent environment setup — run the entire app in one command using Docker.","archived":false,"fork":false,"pushed_at":"2025-05-05T23:49:29.000Z","size":37376,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-05-08T00:12:07.332Z","etag":null,"topics":["boookrecommendationapp","python3","recommendation-engine","recommender-system"],"latest_commit_sha":null,"homepage":"https://www.kaggle.com/datasets/arashnic/book-recommendation-dataset?select=Ratings.csv","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ziraddingulumjanly.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-05-04T19:47:15.000Z","updated_at":"2025-05-05T23:25:51.000Z","dependencies_parsed_at":"2025-05-04T20:37:37.109Z","dependency_job_id":"2143c85a-9154-4071-ae95-d08b0d86dc10","html_url":"https://github.com/ziraddingulumjanly/Book-Recommender-App-Via-Python","commit_stats":null,"previous_names":["ziraddingulumjanly/book-recommender-app-via-python"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ziraddingulumjanly%2FBook-Recommender-App-Via-Python","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ziraddingulumjanly%2FBook-Recommender-App-Via-Python/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ziraddingulumjanly%2FBook-Recommender-App-Via-Python/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ziraddingulumjanly%2FBook-Recommender-App-Via-Python/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ziraddingulumjanly","download_url":"https://codeload.github.com/ziraddingulumjanly/Book-Recommender-App-Via-Python/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252973693,"owners_count":21834108,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["boookrecommendationapp","python3","recommendation-engine","recommender-system"],"created_at":"2025-05-08T00:12:18.921Z","updated_at":"2025-05-08T00:12:19.831Z","avatar_url":"https://github.com/ziraddingulumjanly.png","language":"Jupyter Notebook","readme":"# 📚 Book Recommender System\n[![Streamlit App](https://static.streamlit.io/badges/streamlit_badge_black_white.svg)](https://book-recommender-app-via-python-wnkubfmbrwnqvgw7kas5hq.streamlit.app/)\n\nThis project is an interactive **Book Recommender System** built using **Python** and **Streamlit**, based on a collaborative filtering approach. It leverages real-world user ratings data to suggest books that are similar to a selected title, using **cosine similarity** between user rating vectors. The underlying dataset includes detailed metadata such as book titles, authors, publication years, publishers, and even cover image URLs, enabling both analytical and visual exploration.\n\nThe system filters out low-quality and sparse data to focus on meaningful ratings, ensuring high-quality recommendations. Once a user selects a book, the app returns a ranked list of the most similar titles along with their similarity scores. In addition to a summary table, it visually showcases each recommended book’s cover, author, publisher, and publication year — making the experience both informative and user-friendly.\n\nDesigned for both educational and practical use, this project demonstrates key concepts in recommendation systems, including data preprocessing, user-item matrix construction, similarity measurement, and interactive deployment. It’s ideal for anyone interested in building intelligent applications from real data, exploring collaborative filtering, or simply discovering new books.\nPerfect! Here's a continuation of your `README.md` — now including a clear and concise **\"How to Run\"** section with instructions for cloning, installing, and running the app locally using Streamlit:\n\n### 📂 Dataset\n\nThe recommender system is built using two core files from a public dataset available on Kaggle: **Books.csv** and **Ratings.csv**. The `Books.csv` file contains detailed metadata about each book, including title, author, publisher, year of publication, and image URLs. The `Ratings.csv` file includes over one million book ratings provided by real users, which serve as the foundation for collaborative filtering.\n\nIf you would like to download the original dataset yourself, please visit **[this Kaggle link](https://www.kaggle.com/datasets/arashnic/book-recommendation-dataset?select=Ratings.csv)**. Both `Books.csv` and `Ratings.csv` are available there and are essential to running the recommendation engine effectively.\n\n\n### 🛠️ How to Run the Project Locally\n\nTo run the Book Recommender System on your local machine:\n\n1. **Clone the repository** or download it as a ZIP and extract it:\n\n2. **Make sure you have the required Python packages installed**. If not, install them using:\n\n```bash\npip install pandas numpy scikit-learn streamlit\n```\n3. **Run the Streamlit app**:\n\n```bash\nstreamlit run app.py\n```\n\n4. A browser window will automatically open with the app interface. You can see demo images below.\n\n![image](https://github.com/user-attachments/assets/e4563f13-b0f4-4c7d-9a7b-f0d91a21d5b9)\n\n![image](https://github.com/user-attachments/assets/300c693a-c7b7-4e57-9bc1-d07fcb171b8b)\n![image](https://github.com/user-attachments/assets/86d93fa1-5374-4320-931e-360a8fdd3a1f)\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fziraddingulumjanly%2Fbook-recommender-app-via-python","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fziraddingulumjanly%2Fbook-recommender-app-via-python","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fziraddingulumjanly%2Fbook-recommender-app-via-python/lists"}