{"slug": "studymate-an-ai-study-partner-built-for-a-friend", "title": "StudyMate — An AI Study Partner Built for a Friend", "summary": "Jaswanth Kumar built StudyMate, an AI study companion that extracts text from uploaded PDF notes, chunks it, and uses TF-IDF retrieval to feed relevant sections to an open-weight Qwen model for answers, explanations, and quizzes. The app pairs a React/TypeScript/Vite frontend with a FastAPI backend, stores document chunks in MongoDB Atlas, and runs Qwen3-4B-Instruct-2507 via Hugging Face Inference Providers with an option to run models locally through Ollama. It is deployed as separate backend and frontend services on Render.", "body_md": "*This is a submission for the [Hacktoberfest Weekend Challenge: Build for a Friend](https://dev.to/challenges/hacktoberfest-weekend-2026-10-01)*\n\nI built **StudyMate**, an AI-powered study companion designed for a real friend who wanted a simpler way to understand class notes and prepare for exams.\n\nThe problem was simple: students often have long PDF notes, but finding the right information and understanding difficult topics can take a lot of time.\n\nStudyMate lets them:\n\nThe idea was not to build another general-purpose chatbot. I wanted to build something focused on one real person's study workflow:\n\n**Notes → Understanding → Practice**\n\n🌐 **Live Demo:** [https://studymate-local-frontend.onrender.com/](https://studymate-local-frontend.onrender.com/)\n\nThe live version is deployed and can be used directly in the browser.\n\n💻 **GitHub Repository:** [https://github.com/Jaswanth-Kumar-2007/StudyMate-Local](https://github.com/Jaswanth-Kumar-2007/StudyMate-Local)\n\nThe complete source code for the frontend and backend is available in the repository.\n\nStudyMate is built with **React + TypeScript + Vite** on the frontend and **FastAPI + Python** on the backend.\n\nThe main AI pipeline is:\n\n```\nPDF Study Notes\n      ↓\nPDF Text Extraction\n      ↓\nText Chunking\n      ↓\nTF-IDF Retrieval\n      ↓\nRelevant Study Sections\n      ↓\nQwen Open-Weight Model\n      ↓\nAnswer / Explanation / Quiz\n```\n\nthe deployed version, I use Qwen/Qwen3-4B-Instruct-2507 through Hugging Face Inference Providers.\n\nI also designed the project so that the AI layer can be run locally using Ollama with an open-weight Qwen model.\n\nTech Stack\n\nFrontend\n\nBackend\n\nAI\n\nDatabase\n\nDeployment\n\nMongoDB is used to persist the extracted document information and text chunks.\n\nOpen innovation made it possible for me to build StudyMate around technologies that I can experiment with, understand, and adapt instead of depending entirely on a closed AI system.\n\nThe project uses the open-weight Qwen model as its AI foundation.\n\nFor the deployed application, Hugging Face provides convenient inference, while the same project can also be connected to Ollama for local model execution.\n\nThis gives StudyMate flexibility to:\n\nThe project also relies on open-source technologies such as React, FastAPI, pypdf, scikit-learn, PyMongo, Vite, and Lucide React.\n\nStudyMate is deployed using **Render**, with the FastAPI backend and React frontend hosted as separate Render services.\n\nRender made it possible to deploy the complete application and make the study companion accessible through a public web interface.\n\nStudyMate uses **MongoDB Atlas as its data layer**.\n\nWhen a student uploads a PDF, the application extracts the text, splits it into study-note chunks, and stores the document information and extracted chunks in MongoDB Atlas.\n\nThese stored chunks are then used by the retrieval pipeline to find relevant study material when the student asks a question, requests an explanation, or generates a quiz.\n\nThis is an individual submission by **Jaswanth Kumar**.\n\nDEV Profile: [https://dev.to/jaswanthkumarkamireddi](https://dev.to/jaswanthkumarkamireddi)", "url": "https://wpnews.pro/news/studymate-an-ai-study-partner-built-for-a-friend", "canonical_source": "https://dev.to/jaswanthkumarkamireddi/-studymate-an-ai-study-partner-built-for-a-friend-55di", "published_at": "2026-10-04 06:24:23+00:00", "updated_at": "2026-10-04 06:38:00.776281+00:00", "lang": "en", "topics": ["ai-products", "ai-tools", "large-language-models", "generative-ai", "developer-tools"], "entities": ["Jaswanth Kumar", "StudyMate", "Qwen", "Hugging Face", "Ollama", "FastAPI", "MongoDB Atlas", "Render"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/studymate-an-ai-study-partner-built-for-a-friend", "markdown": "https://wpnews.pro/news/studymate-an-ai-study-partner-built-for-a-friend.md", "text": "https://wpnews.pro/news/studymate-an-ai-study-partner-built-for-a-friend.txt", "jsonld": "https://wpnews.pro/news/studymate-an-ai-study-partner-built-for-a-friend.jsonld"}}