Skip to content

devanshi14malhotra/BiblioDrift

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

1,412 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Warning

Netlify builds have stopped due to limit exceeding as the project was very popular and had regular commits. Changes may not be visible on the deployed site. Please run the app locally.

🌌 BiblioDrift β€” Drift Through Stories, Not Screens

Live App NSoC 2026 GSSoC 2026 MIT License

πŸŒ™ A calm, immersive, AI-powered book discovery experience

"Find yourself in the pages."

BiblioDrift transforms book discovery into an emotional journey β€” where stories are explored through mood, atmosphere, and feeling instead of endless scrolling.

🌧️ Mood-first discovery β€’ πŸ“š Immersive reading β€’ πŸ€– AI-powered storytelling

Deploys by Netlify

🌌 Table of Contents

πŸ“š Section πŸ”— Description
πŸ’­ The Idea Vision and inspiration behind BiblioDrift
🧘 Core Philosophy Principles that shape the experience
✨ Experience Highlights Main features and immersive interactions
πŸ› οΈ Tech Stack Technologies powering the platform
🧠 System Architecture Flow between frontend, backend, and AI
πŸ“Έ Screenshots Visual preview of the application
πŸ“„ License Project licensing information

🌿 The Idea

Most platforms make reading feel like:

  • ❌ Endless scrolling
  • ❌ Algorithm overload
  • ❌ No emotional connection

BiblioDrift is different.

It feels like:

πŸ“š Walking into a quiet bookstore
β˜• Picking a book based on mood
🌧️ Letting the atmosphere guide you


🌟 Core Philosophy

  • 🧘 Zero UI Noise β†’ No clutter, no distractions
  • 🎭 Vibe-First Discovery β†’ Search by feeling, not metadata
  • πŸ“– Tactile Interaction β†’ Books behave like real objects
  • πŸ€– AI as a Bookseller β†’ Not recommendations, but conversations

✨ Experience Highlights

πŸ“š Interactive Library

  • 3D books you can pull, flip, and explore
  • Shelf-based organization (Want / Reading / Favorites)

🧠 AI-Powered Discovery

  • Mood-based recommendations (e.g., β€œrainy mystery”)
  • Dynamic AI-generated blurbs
  • Conversational assistant β†’ Elara, the Bookseller

🌌 Immersive UX

  • Glassmorphism interface
  • Ambient sounds (rain, fireplace,Calm Ocean Waves,Stormy Rain)
  • Emotion-based tagging system

⚑ Performance & UX

  • Skeleton loaders (smooth loading)
  • LocalStorage persistence
  • Seamless interactions

πŸ› οΈ Tech Stack

Layer Technology
Frontend HTML5, CSS3 (3D), Vanilla JS
API Google Books API
Backend Flask, SQLAlchemy, JWT cookies
AI LLM-powered notes, chat, and mood analysis
Storage LocalStorage

πŸš€ Backend Deployment & BACKEND_URL Setup

⚠️ The frontend is deployed on Netlify, but the Flask backend is not yet deployed. Google Sign-In and all AI features require the backend to be running.

Why is this needed?

When a user clicks "Sign in with Google", the browser sends a request to /api/v1/auth/google. Netlify needs to know where to forward that request, that's what BACKEND_URL is for. Without it, Netlify has no rule for /api/v1/* and shows a 404 error.

Step 1 β€” Deploy the Flask backend

You can deploy the backend (located in the /backend folder) to either:

Platform Free Tier Docs
Render βœ… Yes Render Python Docs
Railway βœ… Yes Railway Docs

After deploying, you'll get a public URL like: https://your-app.onrender.com

Step 2 β€” Set BACKEND_URL in Netlify

  1. Go to Netlify Dashboard
  2. Open your site β†’ Site Configuration β†’ Environment Variables
  3. Click Add a variable
  4. Set:
    • Key: BACKEND_URL
    • Value: https://your-app.onrender.com (no trailing slash)
  5. Click Save

Step 3 β€” Redeploy the Netlify site

After setting the variable:

  1. Go to Deploys tab in your Netlify dashboard
  2. Click Trigger deploy β†’ Deploy site
  3. This reruns build_netlify.py, which picks up BACKEND_URL and adds the proxy rule to _redirects

After this, "Sign in with Google" will correctly reach the Flask backend. βœ…


🧠 System Architecture

graph TD
	A[Frontend UI] -->|Mood Query| B[Flask Backend]
	B -->|Prompt Engineering| C[LLM / AI Service]
	C -->|Generated Insight| B
	B -->|JSON Response| A
	A -->|Book Data| D[Google Books API]
	A -->|Persistence| E[LocalStorage]
Loading

πŸ“Έ Screenshots

Discovery & Virtual Library

Home Page

Virtual Library Sign In Page

Capturing the tactile, vibe-first essence of BiblioDrift.


πŸ“š Documentation Hub

πŸ“„ Document ✨ Description
🧠 Architecture Guide Detailed system design, data flow, and backend structure
πŸ“‘ API Documentation API endpoints, request/response examples, and integration flow
πŸš€ Roadmap Upcoming features and future development plans
πŸ—‚οΈ Project Structure Complete folder hierarchy and project organization
πŸ“– Tutorial Guide Step-by-step setup and usage walkthrough
🀝 Contributing Guide Contribution workflow, rules, and PR process
🧩 Mood Analysis Module AI mood engine architecture and logic
πŸ›’ Purchase Links Module Purchase link generation system documentation

Built with β˜• and code by Devanshi Malhotra and contributors.

⭐ If you like this project, consider starring the repository.


πŸ“„ License

This project is licensed under the MIT License.

Releases

No releases published

Packages

 
 
 

Contributors