A study companion built for one — not the market
Most Spanish dictionaries stop at a translation. They don't know my level, can't hold a conversation about my trip, and definitely don't remember what I struggled with last week. I wanted something that actually adapted to me.
An AI study companion built on Dify, wired to Gemini, Tavily Search, and Notion. Four features, one Notion workspace as the interface:
Look up a word and get a core definition plus common collocations, saved into Notion with a spaced-repetition tag (Forgot / Mastered) — the same logic as Anki, written in my own words.
Enter a word and a CEFR level. Tavily pulls real news; the LLM is constrained to include the queried word, its verb/tense variations, and a breakdown of the original sentence structure.
Tavily surfaces real spots and food recommendations for a destination; the LLM turns it into a bilingual guide plus practical conversation phrases.
Every week, the workflow reads back through what I studied and generates a summary — new words, grammar covered, and where I'm still shaky.
User input branches through conditional logic in Dify: a word triggers the vocabulary flow, a travel query pulls from Tavily's travel index, a date triggers the weekly-report flow that reads existing Notion data before writing a new summary. Each branch calls Gemini, reformats the output, and writes back to a dedicated Notion database — with a 3x retry on every API call.
The hardest part wasn't the workflow — it was the prompting. Early on, the LLM couldn't tell where its job ended. I'd ask it to show a 2–3 row preview in a Notion table; it would "fix" the request but quietly return broken formatting that spilled an entire block into one cell. The output looked plausible, so I kept re-checking manually. The fix was tightening the prompt's boundaries: when the model is unsure, it stops and flags it instead of guessing — which cut my manual double-checking dramatically.
Currently for personal use only. Next step is publishing the workflow to the Dify Marketplace, with an eye toward opening it up as a tool other Spanish learners can actually use.