Inspiration

Languages and code have always pulled me in the same direction. While studying both, I realised every new tongue I picked up was easier than the last, not because I was smarter, but because the previous ones kept leaving lexical breadcrumbs behind. Spanish and Romanian let me read Italian almost at first sight; with a few deliberate conversations the language clicked and never left. I looked for an app that treated that overlap as a feature, not as noise, and found none. Dialectio is my attempt to automate that “already-halfway-there” feeling for anyone who speaks a Romance language and wants to reach another.

What it does

At sign-up the learner declares a source language. From that moment every exercise, hint and AI dialogue is generated to exploit cognates and shared syntax first, and introduce real novelty only when it adds communicative power. A micro-exercise teaches the shape of a phrase, a short role-play tests it in context, and both steps feed fresh data back into the next prompt so practice stays balanced between familiar terrain and new ground. The result is momentum: you speak sooner because you never start from zero.

How we built it

Dialectio runs entirely in the Bolt.new IDE with a React + TypeScript front end and Tailwind styling. Supabase provides authentication, row-level-secure storage and edge functions. Conversational logic is orchestrated with LangGraph; language understanding and hint generation come from OpenAI embeddings; text-to-speech replies use ElevenLabs. For the public demo every costly LLM call is served from a cache layer so judges experience real speed without incurring tokens.

Challenges we ran into

Version control became the first hurdle: building inside an online IDE is fast, but keeping Git history clean while the database schema kept evolving required strict discipline. A second challenge was self-restraint, saying “no” to tempting features so the MVP stayed loyal to the original spec. Finally, adhering to a coherent design system in Tailwind forced me to rethink components I had already coded; every colour and spacing token had to pass a consistency test before shipping.

Accomplishments that we're proud of

The highlight is a ranking algorithm that predicts which Italian (or French, or Portuguese) words a Spanish-speaking learner will probably grasp at first sight. By mixing frequency data with cross-lingual embeddings the system surfaces cognates early and defers low-yield vocabulary, giving the user an immediate sense of progress.

What we learned

This sprint was a crash course in realistic time-boxing: features that did not amplify the core value were postponed without remorse. I also learned to transpose academic linguistics into executable rules, and to weave modern AI tooling, LangGraph orchestration, OpenAI embeddings, ElevenLabs TTS, into a single Bolt workspace without losing performance.

What's next for dialectio.xyz

The roadmap is clear: extend the engine to other language clusters, add persistence so learners can save external materials, and train an accent-feedback module that flags phonetic drift in real time. The end goal is a polished B2C product, building technology stack robust enough to license to fellow founders who share the vision or joining a startup where I can build a product like this.

Built With

Share this project:

Updates