Skip to content
All projects

// Mobile · RAG · Vector Search

StudyMate

Student productivity app with a RAG study assistant

Mobile app, backend, RAG pipeline & vector search · 2025

Illustrative preview — replace with a real screenshot by adding `public/projects/studymate.png` and wiring it into ProjectVisual.

React NativeExpoNode.jsExpress.jsMongoDB AtlasFirebaseRAGHugging Face

A cross-platform student productivity and learning app built with React Native (Expo), Firebase Authentication, Node.js, Express.js, and MongoDB Atlas.

Beyond Pomodoro, timetable, SGPA, and study workflows, the core AI feature is a RAG-based study assistant for PDF question answering: document ingestion, text extraction, chunking, embeddings, MongoDB Atlas Vector Search, semantic retrieval, and Hugging Face LLM generation.

Retrieval is user-isolated, so each student's questions are answered only from their own documents.

// features

Study workflows

Pomodoro timer, timetable, SGPA calculator, and focused study flows in one cross-platform app.

PDF Q&A assistant

Ask questions over uploaded PDFs with grounded, retrieval-based answers instead of generic chat.

RAG pipeline

Document ingestion, text extraction, chunking, embeddings, Atlas Vector Search retrieval, and Hugging Face generation.

User-isolated retrieval

Vector search is scoped per user so documents never leak across accounts.

// architecture

  • Expo (React Native) client with Firebase Auth; Express API handling uploads, chunking, and Q&A orchestration.
  • Ingestion: PDF → text extraction → chunking → embeddings → MongoDB Atlas with Vector Search index.
  • Query: embed question → semantic retrieval (user-scoped) → grounded generation with Hugging Face LLM.
  • MongoDB Atlas stores both app data (timetable, sessions, SGPA) and vectorized document chunks.

// implementation

  • Chunking tuned for study PDFs so answers cite coherent passages rather than fragments.
  • User-scoped vector filters on every retrieval call.
  • Separation of productivity data and RAG data paths for clearer access control.

// challenges

Study PDFs vary in layout and text quality.

approach — Normalized extracted text before chunking so headings, lists, and broken line-breaks don't poison embeddings.

Keeping answers grounded, not hallucinated.

approach — Constrained generation to retrieved passages and surfaced the retrieval step so failures are debuggable.

Mobile + backend auth consistency.

approach — Used Firebase Auth tokens end-to-end so the API can enforce per-user document isolation.