/ReadNext

The Book Recommendations System is a web application that helps users discover books tailored to their interests. Users can explore a diverse collection of books, view recommendations, and manage their profiles.

Primary LanguagePython

📚 Book Recommendations System

This project was developed for my PPY (Programming in Python) class at the Polish Japanese Academy of Information Technology.

Overview

The Book Recommendations System is a web application that helps users discover books tailored to their interests. Users can explore a diverse collection of books, view recommendations, and manage their profiles.

Explore Page

Explore

Profile Page

Profile

Recommendations Page

Recommendations

Features

  • 🔍 Book Search: Search for books by title, author, year, or genre.
  • 👤 User Profiles: View and manage your liked books.
  • 🎯 Personalized Recommendations: Receive book recommendations based on your likes and preferences.

Setup

Prerequisites

Ensure you have the following installed:

  • Python 3.8+
  • Flask
  • Flask-Migrate

Installation

  1. Clone the repository:

    git clone <repository-url>
    cd <repository-directory>
  2. Create a virtual environment and activate it:

    python -m venv venv
    source venv/bin/activate  # On Windows use `venv\Scripts\activate`
  3. Install the required packages:

    pip install -r requirements.txt
  4. Initialize the database:

    flask db init
    flask db migrate -m "initial migration"
    flask db upgrade
  5. Seed the database with initial data (if needed):

    flask seed_db

Running the App

Start the Flask development server:

flask run

Open your browser and navigate to http://127.0.0.1:5000 to access the app.

🚫Common errors

If you encounter a 403 error when trying to log in or run the app using Chrome or Chromium, try clearing the socket pool: Open a new tab and go to:

chrome://net-internals/#sockets

Click on "Flush socket pools."