An AI-powered full-stack application that allows users to:
- π Browse a dashboard of scraped books
- π View detailed information about each book
- π€ Ask AI questions about books and receive intelligent answers
- π§ Use Retrieval-Augmented Generation (RAG) with ChromaDB
- π Run a local Large Language Model (LLM) using LM Studio
This project combines web scraping, vector databases, Django REST APIs, and a modern React frontend to create a real-world AI application.
- Displays all scraped books in a responsive card layout
- Shows title, author, rating, and description
- Includes links to the original book pages
- Displays detailed information about a selected book
- Provides a direct link to the original source
- Includes navigation to the AI Q&A page
-
Ask questions such as:
- Summarize a book
- Recommend similar books
- Explain themes and characters
-
Uses RAG to retrieve relevant book data
-
Generates answers using a locally hosted LLM in LM Studio
- Sentence Transformers create embeddings
- ChromaDB stores vector representations
- Relevant book data is retrieved before querying the model
-
Built with Django REST Framework
-
Provides endpoints for:
- Listing books
- Retrieving book details
- Asking AI questions
- Python
- Django
- Django REST Framework
- SQLite
- ChromaDB
- Sentence Transformers
- OpenAI Python SDK
- python-dotenv
- LM Studio
- Phi 3.1 Mini 4K Instruct
- React
- Vite
- Tailwind CSS
- Axios
- React Router DOM
- React Hot Toast
bookidentifier/
βββ backend/
β βββ ai_insights/
β βββ backend/
β βββ books/
β βββ chroma_db/
β βββ media/
β βββ rag/
β β βββ query_books.py
β βββ scraper/
β βββ venv/
β βββ .env
β βββ db.sqlite3
β βββ manage.py
β βββ requirements.txt
β
βββ frontend/
βββ public/
βββ src/
β βββ assets/
β βββ pages/
β β βββ Dashboard.jsx
β β βββ BookDetail.jsx
β β βββ HomePage.jsx
β βββ App.jsx
β βββ App.css
β βββ index.css
β βββ main.jsx
βββ package.json
βββ tailwind.config.js
βββ postcss.config.js
βββ vite.config.js
| Method | Endpoint | Description |
|---|---|---|
| GET | /api/books/ |
Get all books |
| GET | /api/books/<id>/ |
Get book details |
| POST | /api/ask/ |
Ask AI questions |
{
"question": "Recommend books similar to A Himalayan Love Story"
}{
"question": "Recommend books similar to A Himalayan Love Story",
"answer": "Based on the themes of adventure and self-discovery..."
}git clone https://github.com/your-username/bookidentifier.git
cd bookidentifiercd backend
python -m venv venv.\venv\Scripts\Activate.ps1pip install -r requirements.txtpython manage.py migratepython manage.py runserverBackend runs at:
http://127.0.0.1:8000/
- Install LM Studio
- Download and load
Phi 3.1 Mini 4K Instruct - Open the Developer tab
- Start the Local Server
- Ensure the server is reachable at:
http://127.0.0.1:1234
Create a .env file inside backend/:
LM_STUDIO_URL=http://127.0.0.1:1234/v1
LM_STUDIO_API_KEY=lm-studio
LM_STUDIO_MODEL=phi-3.1-mini-4k-instructcd ../frontend
npm install
npm run devFrontend runs at:
http://localhost:5173/
- Summarize A Himalayan Love Story
- Recommend books similar to A Himalayan Love Story
- What are the main themes of this book?
- Suggest books about adventure and self-discovery
- Full-Stack Development
- REST API Design
- Web Scraping
- Vector Databases
- Sentence Embeddings
- Retrieval-Augmented Generation (RAG)
- Local LLM Integration
- React Routing
- Modern UI Design
Yamini Priyadarsani Behera
- GitHub: https://github.com/YAM1234-B
- LinkedIn:https://www.linkedin.com/in/yamini-priyadarsani-393aa135a/
- Django REST Framework
- React
- Tailwind CSS
- ChromaDB
- Sentence Transformers
- LM Studio
- Microsoft Phi-3



