Skip to content

Shammo07/RecSys-Project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

📚 RecSys — Book Recommendation System

A Flask-based web application that recommends books to users using collaborative filtering and content-based filtering techniques powered by scikit-surprise and scikit-learn.

Features

  • Demographic-based initial suggestions – recommends books based on user age and location similarity
  • Collaborative filtering – uses KNN with means (via Surprise) to generate personalized recommendations from rating history
  • Content-based filtering – uses TF-IDF and cosine similarity on book metadata
  • Interactive web UI – built with Flask and Jinja2 templates

Project Structure

flaskr/
├── __init__.py         # Flask app factory
├── main.py             # Routes and recommendation logic
├── static/
│   ├── book_data.csv   # Book metadata
│   ├── book_info.csv   # Additional book info
│   └── Users.csv       # User demographic data
├── templates/
│   └── index.html      # Main UI template
└── tools/
    └── data_tool.py    # Data loading & helper utilities

Setup

1. Create and activate a virtual environment

python3 -m venv venv
source venv/bin/activate

2. Install dependencies

pip install -r requirements.txt

Run the project

flask --app flaskr run --debug

Then open your browser at http://127.0.0.1:5000.

Requirements

  • Python 3.10+
  • See requirements.txt for full list of dependencies

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors