Inspiration

Our inspiration is the difficulty that comes with language learning. Us as students and people in society can understand and appreciate someone who is multilingual because learning languages is difficult. We wanted to build something that eases language learning and makes having a quality tutor much more accessible.

What it does

LingoBuddy is an intelligent AI language tutor that listens and responds to users in real time, adapting its feedback based on what they say. It gives positive reinforcement when learners are on the right track, and offers gentle, constructive nudges when mistakes are made, helping students arrive at the correct answer through guided discovery rather than immediate correction. LingoBuddy can accurately assess whether a student’s response is right or wrong, referencing past messages to build on previous knowledge to reinforce learning. Each LingoBuddy tutor is uniquely tailored to the language being learned, offering culturally relevant examples, native phrasing, and tone that reflects how the language is actually used, this makes each interaction feel natural, personalized, and immersive.​

How we built it

We built LingoBuddy using javascript for the frontend and python for the backend, we used APIs such as OpenAi's gpt-4o and whisper and for our the various different voices we used ElevenLabs flash v2.5 model. We used Next.js as our react framework to build this project quick and so it's scalable.

Challenges we ran into

Some challenges that we ran into were the use of APIs, prompt tweaking, and React state management. We learned how to use these different AIs and connect them through API calls. We had to figure out how to structure and debug these calls properly, and while it was confusing at first, experimenting helped us get everything running. Prompt engineering was also a learning curve, getting consistent, high-quality output from the models took lots of tweaking and iteration. React state management proved to be another major hurdle, especially with features like tracking conversation history anc syncing viseme animations with audio playback. At one point, our entire UI broke due to the "use client" directive not being recognized, which blocked us from using hooks like useState we eventually solved it by restarting the dev server. Overcoming all these difficulties in such a short time was challenging but fun and helped us refine old skills and discover new ones.

Accomplishments that we're proud of

We are proud that we actually made a working Ai language tutor. We are proud that in just 36 hours we built intelligent tutors to help people learn languages in a very easy and accessible way, and that we pushed ourselves and coded things we've never coded before and got it all to work seamlessly.

What we learned

We learned that progress takes time, before the weekend started we were worried if just 36 hours would be enough time to build a good enough project. We didn't know how far we would get or what we would accomplish, but now that we are finished, we learned that just doing something and working at it, and worrying less about everything that could go wrong, but rather focusing on everything that could go right will get you to your goal.

What's next for LingoBuddy

LingoBuddy currently supports six languages: English, Spanish, Dutch, French, Chinese, and Japanese. Our goal is to expand LingoBuddy to support many more languages while continuously improving its effectiveness and usefulness for learners around the world.

Built With

Share this project:

Updates