Inspiration
It can be hard to stay consistent with learning a language. One engaging and effective way to learn a language is through immersion. Reading an article, watching a show, and listening to music can all help you strengthen your vocabulary, enhance your comprehension skills, and see how the language works in real time.
However, there's no way to turn media you interact with on a daily basis into a strategic learning experience. That's where Atheneum of Tongues^3 comes in. 🌳✨
What it does
Real time translation 🗣️: Upload the URL of an article or upload a pdf/txt file to the media player. As you consume the piece of media, it’ll provide real time captions or translations in your target language. If you don't know the meaning of a word in the target language, simply click on it to reveal your native language translation.
Vocabulary Flashcards 🗒️: As you read through the media and find the meanings of unfamiliar words, you can add it to a flashcard set for active recall. You can practice your cards consistently to commit the meaning of the word to memory.
Comprehension / Active Recall ✍️: Once you've finished reading your media, the app helps you create and organize your flashcards to quiz yourself! This helps you practice your active language skills, combining the lesson into a passive and active language learning experience.
How we built it
Frontend: Built with Next.js and React, focusing on a responsive, accessible UI that manages updates between text rendering, word-token interaction, and flashcard queues.
Backend: Powered by a FastAPI (Python) server, handling text parsing, API routing, and state orchestration.
AI & Intelligence Engine: Integrated the Google Gemini API to generate low-latency, context-aware translations, and dynamically synthesize flashcards tailored directly to the ingested source material.
Challenges we ran into
API Rate Limiting: Word parsing and dynamic assessment generation initially hit Gemini API bottlenecks and token rate limits. We tackled this by optimizing our prompt structure, consolidating batch requests for text translation, and structuring asynchronous handling in FastAPI. Cross-Stack Data Synchronization: Aligning the Next.js state machine with asynchronous FastAPI endpoints required rigorous debugging around payload structures and dynamic UI re-rendering.
Accomplishments that we're proud of
Successfully architecting a full-stack pipeline that connects real-time language ingestion to LLM-powered context extraction in under 24 hours. Crafting a smooth user experience where language learners can interpret complex text without context-switching away from the material. Implementing collaborative engineering workflows through structured Git version control, branch merging, team planning, and design across team members with varying web development experience.
What we learned
We learned how to design backend wrappers around generative AI models (Gemini), handle API edge cases, and enforce strict JSON output structures. We learned about backend architecture and how to structure endpoint validation using FastAPI and Pydantic. We got comfortable with Github version control, and learned how to navigate merge conflicts. A lot of us were beginner coders with minimal experience in web app development, so we learned a lot about how to work as a team in this aspect-- dividing full-stack responsibilities, and working under a time crunch.
What's next for AtheneumOfTongues³
We aim to expand ingestion pipelines to support videos (Youtube, mp4, etc.), using speech to text models. We are also planning on implementing a quiz feature that would test the user on the words they saved.
Log in or sign up for Devpost to join the conversation.