Inspiration
Students incresingly use AI to understand difficult concepts, revise lecture notes, and prepare for exams. However, generic AI assistants can provide answers that are difficult to verify or that go beyond the material a student is actually expected to learn. I wanted to build something more focused: an AI learning companion that helps students learn from their own course materials rather than relying on unsupported answers. This inspired us to create SourceWise, a course-grounded AI tutoring platform designed to make learning more reliable, transparent, and personalized.
What it does
SourceWise transforms course materials into an interactive learning experience. -Course-grounded AI tutoring: Students can ask questions about their selected course and receive answers grounded in indexed learning materials. -Source citations: Answers include references to supporting material, such as lecture slides, book pages, and video timestamps, helping students verify the information. -Multi-source knowledge base: Students can add PDF lecture slides, textbooks, and YouTube videos with available captions. -Course organization: Learning materials can be organized into courses, allowing students to focus their questions on a particular subject. -AI-powered practice quizzes: The platform supports configurable quiz lengths and question types, with the goal of helping students test their understanding using course material. -Learning dashboard: SourceWise is designed to help students review their topic mastery, monitor progress, and identify areas that need more practice.
The goal is to bring studying, asking questions, verifying information, and assessing understanding into one connected workspace.
How we built it
I built SourceWise as a web application with a Next.js frontend and a Python FastAPI backend.
The frontend provides separate interfaces for Tutor Chat, Quiz, Dashboard, and Sources. The backend manages course materials, retrieval, question answering, quiz generation, and learner-related functionality.
We use a retrieval-augmented generation (RAG) approach to connect AI responses to indexed course content. Learning materials are processed into searchable chunks and stored in a ChromaDB vector database. When a student asks a question, the system retrieves relevant material and uses it to generate a grounded response with source references.
The application also includes YouTube caption ingestion, PDF processing, course selection, and learner-progress functionality. We designed the system around a simple principle: answers should be useful, traceable to learning materials, and relevant to the student's selected course.
Challenges we ran into
One of the main challenges was maintaining consistent course-level filtering across different parts of the application. A course can exist in the interface without having indexed material, so we had to distinguish between course selection and actual source availability.
Another challenge was making answers traceable to their original sources. Retrieval needs to identify relevant content while preserving the references required for students to verify an answer.
I also encountered integration challenges between the frontend and backend, particularly around API communication, course IDs, quiz generation, and displaying meaningful error states. I learned that a successful chat response does not automatically mean a separate feature, such as quiz generation, is working correctly.
Finally, I had to prioritize reliability and a clear user experience while working under a tight hackathon deadline.
Accomplishments that we're proud of
-Built a working course-grounded AI tutoring experience with source citations. -Integrated multiple types of learning materials into a searchable knowledge base. -Added course selection to help students focus their learning experience. -Developed dedicated Tutor Chat, Quiz, Dashboard, and Sources interfaces. -Created a foundation for adaptive practice through diagnostic quizzes, topic-level mastery, and learner progress tracking. -Brought together retrieval, AI generation, source attribution, and a student-facing interface in one application.
Especially proud of building SourceWise around verifiability: students should be able to examine the material behind an answer instead of having to trust an AI response blindly.
What we learned
I learned that building a useful AI learning product involves much more than connecting an LLM to a chat interface.
Retrieval quality, metadata consistency, source attribution, API contracts, validation, and frontend state all influence the final learning experience. I also learned the importance of testing individual workflows independently, since different features can fail for different reasons even when they use the same knowledge base.
Most importantly, I learned that trustworthy AI education requires transparency and a clear connection between generated answers and the materials students are expected to study.
What's next for SourceWise
I want to make SourceWise a more complete personalized learning companion.
My next steps include:
Improving the reliability and validation of automatically generated quizzes. Strengthening course-specific retrieval and filtering across every feature. Making the dashboard more informative with accurate, course-specific learning analytics. Improving adaptive practice based on students' actual mistakes and weaker topics. Expanding support for more learning formats and improving source navigation. Adding study recommendations that help students decide what to revise next. The long-term vision is to help every student turn their existing course materials into a personalized, verifiable, and interactive learning experience.
Built With
- artificial-intelligence
- chromadb
- embeddings
- fastapi
- generative-ai
- large-language-models-(llms)
- natural-language-processing
- next.js
- pdf-processing
- python
- react
- rest-api
- retrieval-augmented-generation-(rag)
- tailwind
- typescript
- vector-search
- youtube-data-/-captions
Log in or sign up for Devpost to join the conversation.