-
-
Once we select the level of proficiency we get the main page of the application where we can access todays lesson as well as previous lesson
-
Profile of user, gives the overview of the app
-
-
Progress bar in the App, we track progress per user
-
LingoLearn login page
-
Practice already solved questions to memorize and learn the new words better
-
Th Reading section of the Application
Inspiration
Most language learning apps treat every learner the same. Whether you're a beginner or intermediate learner, you are often forced through the same static content, repetitive drills, and memorization-heavy exercises.
We wanted to build something closer to a real tutor — a system that understands the learner, teaches concepts before testing them, and adapts based on performance.
That idea became LingoLearn.
What it does
LingoLearn is an AI-powered adaptive language tutor that generates personalized German lessons using Amazon Nova.
Instead of static lessons, the system:
- Dynamically generates lesson content using LLMs
- Evaluates learner responses across reading, listening, writing, and speaking
- Updates a learner state to track progress and weaknesses
- Adapts future lessons automatically
Each lesson follows a teach-first approach:
- Learn (vocabulary, grammar, dialogue)
- Practice (unscored, retryable)
- Assessment (scored, structured evaluation)
- Feedback + progress tracking
How we built it
We designed the system as an agent-based architecture powered by Amazon Nova:
- Planner Agent → selects topic, grammar, difficulty
- Content Generation Agent → creates full lesson packages
- Evaluation Agent → analyzes learner responses
- Memory Agent → updates learner state and adapts future lessons
Tech Stack
- Frontend: Flutter
- Backend: FastAPI (Python)
- AI/LLM: Amazon Nova (Lite + Pro + Canvas)
- Storage: AWS S3 (images, audio)
- Architecture: Modular services + schema-driven generation
We also implemented:
- structured lesson schemas using Pydantic
- section-wise generation to improve reliability
- presigned URLs for secure media delivery
Challenges we ran into
The biggest challenge was generating large structured lesson content reliably using LLMs.
Initially, we attempted to generate the entire lesson in a single response, which caused instability. We solved this by:
- breaking lesson generation into smaller components
- assigning different models for planning vs content generation
- enforcing schema validation
We also faced challenges with:
- S3 media handling (audio/image uploads and retrieval)
- Bedrock model configuration and region compatibility
- ensuring smooth frontend-backend integration under time constraints
Accomplishments that we're proud of
We’re most proud of turning a complex idea into a working, end-to-end product within a short hackathon timeline.
LingoLearn is not just a UI prototype or a simple chatbot — it is a fully functional system that dynamically generates lessons, evaluates user performance, and adapts future learning paths in real time.
One of our biggest achievements was designing and implementing an agent-based architecture using Amazon Nova. We separated planning, content generation, evaluation, and learner state management into distinct components, making the system modular and scalable.
We also built a teach-first learning experience, shifting away from traditional apps that immediately test users. By introducing structured learning, guided practice, and protected assessments, we created a more natural and supportive learning flow.
Another key accomplishment was solving structured lesson generation reliability. Instead of relying on a single large LLM response, we engineered a modular pipeline with schema validation to ensure consistency and quality.
On the engineering side, we successfully integrated:
- Flutter frontend with an intuitive user experience
- FastAPI backend with modular service design
- AWS S3 for media storage and delivery
Amazon Nova models for intelligent lesson generation
Despite time constraints and challenges with model reliability, API integration, and media handling, we delivered a polished and functional product.
Most importantly, we built something that feels less like a tool and more like a real AI tutor — and that’s something we’re genuinely proud of
What we learned
This project taught us:
how to design agent-based LLM systems
how to combine structured data + generative AI
how to build end-to-end AI products under tight timelines
and most importantly, how to move from "LLM demo" to a real usable product
What's next for LingoLearn - Adaptive AI Language Tutor with Amazon Nova
- speech evaluation using audio embeddings
- spaced repetition for vocabulary retention
- multi-language support
- reinforcement learning for lesson optimization
Built With
- amazon-bedrock
- amazon-nova-(lite
- amazon-web-services
- api
- boto3
- canvas)
- fastapi
- flutter
- langchain-(scaffolding)
- pro
- pydantic
- python
- rest
Log in or sign up for Devpost to join the conversation.