Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

20 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

BookSense AI 📚✨

Welcome to BookSense AI, an intelligent book recommendation system designed to help you discover your next great read based on your taste, mood, and current trends.

📖 Introduction

BookSense AI is a modern web application that bridges the gap between traditional book catalogs and personalized discovery. By combining collaborative filtering techniques with state-of-the-art Generative AI (Google Gemini), BookSense offers a unique "Mood-to-Book" experience alongside classic popularity-based recommendations.

❓ Problem Statement

In the digital age, readers suffer from decision paralysis. With millions of books available, choosing one can be overwhelming.

  • Generic Suggestions: Traditional platforms often push "bestsellers" that don't match individual tastes.
  • Lack of Emotional Context: Most algorithms ignore the reader's current emotional state.
  • Static Search: Finding a book requires knowing exactly what you're looking for.

BookSense AI solves this by offering:

  1. Mood-Based Discovery: Analyze your facial expression or describe your mood to get tailored suggestions.
  2. Hybrid Recommendations: Blends statistical popularity with AI-powered semantic understanding.

🏗️ Architecture

The project follows a Hybrid Microservices-like Architecture:

1. Frontend (Client)

  • Framework: React 19 (Vite)
  • Role: Handles the user interface, routing, and direct interactions with AI services.
  • AI Integration: The frontend communicates directly with the Google Gemini API for:
    • Mood Detection: Analyzing facial cues from the webcam.
    • Summarization: Generating engaging book summaries on the fly.
    • Personalization: generating recommendations based on reading history.

2. Backend (Server)

  • Framework: Python Flask
  • Role: API server for the local dataset.
  • Core Engine:
    • Collaborative Filtering: Uses pre-trained Pickle (.pkl) models to find books similar to user inputs based on historical user ratings.
    • Dataset Search: Efficiently queries the processed dataset of 50 top books and thousands of others.

3. AI Layer

  • Model: Google Gemini 2.5 Flash
  • Function: Provides real-time, context-aware intelligence that goes beyond the static dataset.

🛠️ Technical Stack

Frontend

  • React 19: Latest version for robust UI state management.
  • Vite: Ultra-fast build tool and development server.
  • TypeScript: Ensures type safety across the codebase.
  • Google GenAI SDK: For seamless integration with Gemini models.

Backend

  • Python 3.x: The core logic language.
  • Flask: Lightweight WSGI web application framework.
  • Pandas & NumPy: For efficient data manipulation.
  • Scikit-learn: For implementing the recommendation algorithms (Cosine Similarity).

🚀 How to Start

Follow these steps to set up the project locally.

Prerequisites

  • Node.js (v18+)
  • Python (v3.8+)

Step 1: Clone the Repository

git clone <repository-url>
cd BookSense-V3.0

Step 2: Backend Setup

  1. Navigate to the backend directory:
    cd backend
  2. Install dependencies:
    pip install -r requirements.txt
  3. Put Your GEMINI API Key
BookSense-V3.0/frontend/services/geminiService.ts
  1. Start the Flask server:
    python app.py
    The server will start on http://127.0.0.1:5001

Step 3: Frontend Setup

  1. Open a new terminal and navigate to the frontend directory:
    cd frontend
  2. Install dependencies:
    npm install
  3. Start the development server:
    npm run dev
  4. Open your browser and visit the URL shown (usually http://localhost:5173).

🔮 Future Scope & Impact

Potential Impact

  • Enhanced Reading Culture: Making discovery fun encouraging more people to read.
  • Emotional Well-being: Helping users find books that validate or uplift their current mood.

Future Roadmap

  • User Authentication: Save your reading history and favorites to the cloud.
  • Social Features: Share your "Mood Shelves" with friends.
  • Mobile App: A React Native version for on-the-go discovery.
  • Expanded Dataset: Integrating real-time pricing and availability from major bookstores.

Built with ❤️

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages