Inspiration
Students often learn technical subjects through fixed courses where everyone follows the same sequence, regardless of their individual understanding. A student who already understands a concept may spend time revising it, while another student may move forward without properly understanding the fundamentals. We wanted to build a learning system that adapts to the student instead of expecting every student to learn in the same way. This inspired us to create AI-Driven Personalized Learning Journey, an AI-powered platform that builds an individualized learning path based on the student's selected subject and continuously adapts the journey using assessment performance.
What Our Project Does
The student first creates an account and selects a subject such as Java, Python, C++, DBMS, Web Development, or AI. The system then creates a structured learning journey for that subject, progressing from fundamental concepts to more advanced topics. For every topic, the platform can generate:
- Easy-to-understand learning content
- Examples and explanations
- Topic-specific AI doubt support
- AI-generated assessments
- Performance analysis
The important part is the learning loop.
A student does not become "complete" simply by opening a topic. The topic is completed only after the student demonstrates understanding through an assessment. Our learning flow is:
Learn → Practice → Assess → Analyze → Adapt → Unlock
If the student performs well, the next topic becomes available. If the performance is weak, the system can direct the student toward revision and additional practice before progressing. The dashboard maintains the student's actual learning progress, assessment scores, completed topics, and current learning stage.
How AI Is Used
Google Gemini is used as the generative AI layer of the system. AI is used to generate subject-specific learning content, create assessments, and provide contextual explanations for student doubts. The selected subject is passed as part of the learning context so that a Java learner receives Java-related learning content, while a Python learner receives Python-related content. This makes the AI part of the learning process rather than simply providing a general-purpose chatbot.
How We Built It
The application is built using a React frontend and a Python Flask backend. PostgreSQL is used to store user profiles, selected subjects, learning maps, generated topic content, doubts, assessments, and learning progress. The backend communicates with Google Gemini through the Gemini API and exposes REST APIs to the React frontend.
The main architecture is: React → Flask REST API → PostgreSQL / Gemini → React
We designed the system so that generated learning resources can be stored and reused instead of repeatedly generating the same content.
Personalization
Personalization is based on the student's actual learning state. The system associates learning data with the individual user and selected subject. This prevents progress in one subject from being mixed with another subject.
For example, a student's Java journey and Python journey can have independent topics, assessments, scores, and progress. The dashboard calculates progress from completed topics rather than displaying fixed demonstration values.
Challenges We Faced
One of our biggest challenges was integrating generative AI into a structured learning workflow. Generating content is relatively easy; making that content part of a reliable learning system is much harder. We had to design database structures for users, learning maps, topic content, assessments, doubts, and progress. We also had to handle API failures, loading states, repeated AI requests, and synchronization between the React frontend and Flask backend. Another challenge was ensuring that the application does not treat simply viewing content as learning completion. We therefore designed assessment-based progression where completing a topic depends on demonstrated performance.
What We Learned
Through this project, we learned how to integrate a generative AI model into a full-stack application rather than using AI as an isolated feature. We gained practical experience with:
- Generative AI API integration
- Prompt design
- React and frontend state management
- Flask REST APIs
- PostgreSQL database design
- User authentication
- AI-generated assessments
- Performance-based progression
- Connecting AI services with persistent user data
Most importantly, we learned that building an AI application is not only about generating good responses. The real challenge is designing a complete system around AI that is useful, reliable, and personalized.
Future Vision
Our next goal is to make the learning experience more multimodal. The platform can be extended to accept different learning inputs such as text, images, diagrams, code, documents, and voice. Students could, for example, upload a diagram they do not understand, submit code for explanation, or ask a question using voice. The long-term vision is an AI learning companion that understands not only what a student asks, but also how the student learns, where they struggle, and what they need to learn next.
Built With
- ai
- api
- artificial
- flask
- gemini
- generative
- intelligence
- javascript
- postgresql
- python
- react
- rest
- vite
Log in or sign up for Devpost to join the conversation.