# LibAI - AI-Powered Virtual Librarian
LibAI is an AI-powered virtual librarian designed to help students and researchers locate, summarize, and understand resources efficiently. This project integrates a Flask backend with a React frontend built using Vite and Tailwind CSS.
## Table of Contents-[Project Status](#project-status)-[Features](#features)-[Installation](#installation)-[Contributing](#contributing)-[License](#license)## Project Status
This project is currently in its **initial development phase**. The structure and core functionality are in place. This repository serves as a starting point for further development and improvement.
### What's Working:- Basic project structure and routing.
- Core backend functionality (e.g., file upload, document recommendations, RAG with your documents).
- User management using Supabase
### What Needs Improvement:- Frontend-backend alignment: Some API endpoints need to be properly connected to the frontend.
- Additional features: Content filtering, Advanced search, Note sharing, Documents deduplication, Preference filtering and responsive design are yet to be implemented.
## Features-**User Management**: User login and signup with forget password and recover password using Supabase.
-**Smart Document Finder**: Search for books, articles, and theses.
-**Interactive Q&A**: Ask questions and get AI-generated answers.
-**Document Recommendations**: Get personalized recommendations based on user internet or document similarity.
## Installation1. Clone the repository:
```bash
git clone https://github.com/your-username/libai-frontend.git
cd libai
```## Getting Started1. Install all the dependencies
```bash
pnpm install
```- Copy paste the .env.example file to create the .env.local file
cp env.example .env.localRun the Supabase as docker container using the docker images from the instructions given here
Go to .env file inside the supabase repo > docker > .env
Update the SMTP Section with your smtp credentials
Remember the following variables value (these will be used in nextjs app)
DASHBOARD_USERNAME #use this to log into supabase dashboard
DASHBOARD_PASSWORD #use this to log into supabase dashboard
SUPABASE_PUBLIC_URL #use this in nextjs
ANON_KEY #use this in nextjsFinally, run the development server:
pnpm devOpen http://localhost:3000 with your browser to see the result.
- You can check the backend code in this github repo