Maistro - Master your material 🎓
Inspiration 💡
Being students ourselves, we've explored the depths of AI-powered education apps that claim to be the place to study. There are obviously AI study programs galore, but they all lack in a specific area: consistency while staying true to the content they need to teach.
Key Features:
✅ Smart Organization: Users upload their full course materials, and Maistro intelligently segments and categorizes snippets into precise subjects (e.g., vectors in Linear Algebra, decision trees in Machine Learning). This cross-document system enables subject-specific study materials.
✅ Adaptive Quizzes & Mastery System: Maistro tracks user understanding, generating personalized quizzes and optimizing future study sessions based on performance. It applies strategic forgetting to reinforce long-term retention 1. Over time, previously mastered topics fade, encouraging continued review and reinforcement.
✅ Precision Study Support: The mastery system identifies weak subjects and pinpoints exact locations in the user’s study materials for targeted revision. This grounded learning approach ensures adaptability while staying true to course content.
What it does 🚀
Maistro, unlike other study tools, takes care of the hassle and organization of class notes for the user. While other apps may require the user to upload files every time they study, they cannot keep track of progress between chats. Moreover, apps may hallucinate questions that go beyond the scope of the course, needlessly distracting students with information that does not improve their learning experience. Maistro, with its unique document processing and analysis framework, overcomes this challenge and even provides users with direct document references to the material it teaches the user. This, along with Maistro's mastery system, provides the user a single hub for all their learning needs.
For the best experience, users can upload their full course materials, which Maistro intelligently organizes. The app segments and categorizes snippets of uploaded files into precise categories (subjects), which are global across a course (i.e vectors in a linear algebra course, decision trees in a machine learning course). This allows us to build study material for a specific subject with information from across documents. Maistro can then generate subject-specific quizzes and build a user-specific understanding profile, allowing for optimization of further study lessons. The unique mastery system utilizes strategic forgetting as a key tool for long-term retention.[^1]. This system keeps track of what the user knows as evidenced by their ability to perform on the quizzes, forgetting over time to incentivize the continuous reinforcement of these subjects through the course.
Moreover, Maistro's mastery system highlights the subjects the user is struggling with and retools the user's own study materials to identify exactly where they can find the things they need to study. Through optimized quizzes and precise subcategories, Maistro allows for a flexible and adaptable learning environment, all whilst remaining truly grounded in the course content.
How we built it 🛠️
Our tech stack combines frontend and backend technologies to create a seamless learning experience:
Backend:
- Django REST framework for our robust API layer 🐍
- Google Cloud for document storage and management ☁️
- Vertex AI for intelligent processing of educational content 🧠
- Custom NLP pipeline for document segmentation and categorization 📊
- MySQL database for storing user profiles and learning progress 🗄️
Frontend:
- Next.js for a responsive and dynamic user interface ⚡
- Tailwind CSS for clean, consistent styling 🎨
- Authentication system using OAuth 🔐
Challenges we ran into 🧩
Our team primarily consists of backend developers, so using NextJS was a new challenge for us. We spent hours debugging CORS errors and REST API issues. That's not to say backend was completely hassle-free: We've burned through hours trying to understand why Docker wasn't correctly authenticating to Google Cloud services, trying to make sure the LLMs gave us structured responses, and more.
Accomplishments that we're proud of 🏆
We're particularly proud of having been able to ship a product that constructs precise questions related to the core course material. Through our unique, structured data analysis process, we can ensure that no course content deviates from the material covered. Further, we're happy to offer a unique service of allowing users to create quizzes based on subjects which span across dozens of documents, whilst remaining coherent in its theme, focusing on critical subjects within that class that align with the course learning outcomes.
What we learned 📚
We've learned a lot about Vertex, Google Cloud, blob management, buckets, and more. All of us came into this project without any real experience at managing and persisting complex, unstructured objects like PDF files. We've also learned a ton about NextJS and Django.
What's next for Maistro 🔮
We have ambitious plans to expand Maistro's capabilities:
- Collaborative learning: 👥 Allowing students to share resources and compete to maintain learning streaks
- Integration with LMS platforms: 🔄 Connecting with popular learning management systems like Canvas and Blackboard
- Expanded file format support: 📁 Adding compatibility with more document types including slides, audio lectures, and video content
With Maistro, students can master their material efficiently and confidently. We're excited to continue improving and expanding its capabilities!
[^1]: Karpicke, J. D., & Roediger, H. L. (2019). Retrieval-Based Learning: A Perspective for Enhancing Meaningful Learning. Advances in Physiology Education, 43(1), 46-58. https://journals.physiology.org/doi/full/10.1152/advan.00001.2019
Built With
- bucket
- django
- gcp
- gemini
- google-cloud
- llm
- nextjs
- rag
- vertexai
Log in or sign up for Devpost to join the conversation.