Inspiration
Students often spend hours searching through lengthy notes, PDFs, and presentations to understand concepts and prepare for exams. Traditional learning tools do not always provide personalized explanations, context-aware answers, or clear insights into learning progress. We wanted to build an AI-powered study companion that makes learning more interactive, accessible, and personalized by allowing students to learn directly from their own study materials.
What it does
AI Study Companion is an AI-powered personalized learning platform that combines document-based learning, intelligent tutoring, assessments, and progress tracking in one place.
- AI Tutor: Students can ask questions and receive context-aware explanations grounded in relevant study materials.
- Smart Knowledge Base: Upload PDF and PPTX files, extract their content, and retrieve relevant information using semantic search.
- Retrieval-Augmented Generation (RAG): Retrieve relevant document chunks to provide the configured language model with useful context when answering questions.
- Document-Specific Learning: Search across all available study materials or narrow retrieval to a selected document where supported.
- Source Citations: Display relevant source details, such as document titles, page numbers, and text snippets where available.
- Assessments: Complete quizzes and submit results to evaluate understanding.
- Progress Analytics: Track learning activity, topic mastery, retention indicators, and personalized revision recommendations.
- Personalized Dashboard: Access study resources, tutoring, assessments, and progress information through a unified interface.
How we built it
We built AI Study Companion as a full-stack web application using React, TypeScript, Vite, Tailwind CSS, and Framer Motion for the frontend, with Django and Django REST Framework powering the backend APIs.
For document-based learning, the backend extracts text from uploaded PDF and PPTX files, divides the content into manageable chunks, generates embeddings, and stores vectors in ChromaDB for semantic retrieval. Our Retrieval-Augmented Generation pipeline retrieves relevant content to provide context for AI-generated tutoring responses.
The application integrates language-model providers through configurable backend settings, supports token-based authentication, and uses a relational database to persist student accounts, learning activities, and assessment results. The data layer supports SQLite for local development and PostgreSQL when configured for deployment.
We also developed automated backend tests and added a Playwright end-to-end test suite to help validate key application workflows.
Challenges we ran into
One of our biggest challenges was integrating the frontend, backend APIs, document-processing pipeline, vector database, and language-model services into a consistent learning experience.
We also worked on improving retrieval relevance so the AI Tutor could focus on information related to the student's actual study materials. Configuring different LLM providers, handling missing credentials and API failures, maintaining user-specific knowledge isolation, and ensuring reliable authentication required careful testing.
Another challenge was coordinating parallel development across application components while keeping Git branches organized and minimizing merge conflicts.
Accomplishments that we're proud of
We are proud to have brought several essential learning workflows together in one platform: document uploads, semantic knowledge retrieval, AI-powered tutoring, assessments, and progress analytics.
We implemented document-aware retrieval to help the tutor use relevant study content, designed a user-isolated knowledge base, and built backend APIs to connect the major application features.
We also strengthened tutor-grounding and retrieval validation and successfully ran 204 backend tests in our latest recorded test run. In addition, we added a Playwright test suite covering authentication, knowledge management, tutoring, and progress workflows.
Most importantly, we created a foundation that can be extended into a more adaptive and personalized learning assistant.
What we learned
This project helped us understand how to connect large language models with real educational content using Retrieval-Augmented Generation rather than relying only on a model's general knowledge.
We gained practical experience in vector databases, document ingestion, embedding-based semantic search, REST API development, authentication, database integration, automated testing, and frontend-backend integration.
We also learned that building a useful AI application requires more than connecting an LLM: retrieval quality, source relevance, error handling, privacy, testing, and user experience all play important roles in making the system reliable.
What's next for AI Study Companion
We plan to improve AI response accuracy and retrieval relevance, expand adaptive assessments, and personalize revision recommendations based on each student's performance and learning history.
Our next steps include:
- Smarter personalization: Adapt explanations, quizzes, and revision plans to student performance and topic mastery.
- Improved AI evaluation: Measure answer relevance, citation accuracy, and grounding against uploaded study materials.
- Multimodal learning: Explore lecture-video ingestion, speech transcription, and OCR for additional learning resources.
- Enhanced progress analytics: Identify weak topics and recommend targeted revision activities.
- Production deployment: Configure secure hosting, persistent database and vector storage, and reliable hosted LLM access.
- Better learning experiences: Add more interactive quizzes, richer source references, and improved study workflows.
Our long-term vision is to make AI Study Companion a reliable personal learning assistant that helps every student understand concepts, identify knowledge gaps, and learn at their own pace.
Built With
- artificial-intelligence
- authentication
- automated
- chromadb
- django
- django-rest-framework
- embeddings
- framer-motion
- generative-ai
- large-language-models-(llms)
- machine-learning
- natural-language-processing-(nlp)
- pdf-processing
- postgresql
- python
- react
- rest-api
- retrieval-augmented-generation-(rag)
- semantic-search
- sqlite
- tailwind-css
- typescript
- vector-database
- vite
Log in or sign up for Devpost to join the conversation.