Project Story

The Inspiration

Growing up in Vietnam, I witnessed firsthand how learning English has become more than just an academic requirement—it's seen as a crucial stepping stone to success. The young generation in Vietnam considers foreign language proficiency, especially English, as a must-have skill in today's globalized world.

However, the traditional language learning approach has always frustrated me. Students are often confined to textbooks filled with pre-written passages about generic topics that may not spark any genuine interest. We've all been there—trying to stay engaged while reading about "A Day at the Zoo" or "My Summer Vacation" for the hundredth time.

The Vision

This experience inspired me to create Kaleido. I wanted to flip the traditional language learning model on its head: instead of forcing students to learn language through predetermined topics, why not let them learn through topics they're actually curious about?

The name "Kaleido" comes from kaleidoscope—a device that creates beautiful, ever-changing patterns. Similarly, this app creates unique learning experiences from whatever subject interests the learner at that moment.

The Build

I built Kaleido as a web application that leverages AI to generate personalized language learning content. When a user enters any topic—whether it's quantum physics, K-pop, or noodle soup—the app creates:

  • A well-structured reading passage
  • An audio version for listening practice
  • Interactive exercises to test comprehension

The technical challenge was creating content that's not just informative but also structured appropriately for language learning. I implemented specific prompts and workflows to ensure the generated content maintains educational value while staying engaging and relevant to the chosen topic.

Challenges and Learnings

The biggest challenge was finding the right balance between flexibility and educational structure. While I wanted users to learn through topics they love, I also needed to ensure they're getting proper language practice. This led to careful design of the exercise generation system, which creates questions that target specific language learning objectives regardless of the topic.

Another significant challenge was making the content generation feel instantaneous despite the complex processing happening behind the scenes. This required optimizing the workflow and adding engaging loading animations to maintain user interest.

Looking Forward

Kaleido represents my vision for the future of language learning—one where education adapts to the learner's interests rather than the other way around. The current version is just the beginning. I envision enhancing the platform with:

  • Personalized Vocabulary System: Smart flashcards that automatically extract and help users practice new vocabulary from their chosen topics
  • Social Learning Features: A multiplayer mode where friends can learn together, challenge each other, and share interesting generated content
  • Gamification Elements: Streak systems, achievement badges, and daily challenges to keep users motivated
  • Community Content: Allowing users to curate and share their favorite generated lessons, creating a library of diverse, interest-driven learning materials
  • Progress Tracking: Detailed analytics showing vocabulary growth, comprehension improvements, and learning patterns across different topics
  • Many Many Languages: This MVP focuses on English, but there are so many other I want to support.

By combining AI-powered content generation with these social and gamification features, Kaleido aims to make language learning not just personalized, but also fun and community-driven.

Built With

  • elevenlabs
  • ell
  • fal.ai
  • fastapi
  • llamaindex
  • python
  • tavily
Share this project:

Updates