Wörtilizer: German Vocabulary Trainer

Side ProjectBerlin, Germany

Built an open source app that helps German learners build a private vocabulary and memorize the der/die/das article of every noun

  • React
  • Next.js
  • Tailwind CSS
  • Vercel

Context

I was between jobs and wanted a fun project that would also improve my German. Learning the articles of German nouns (der, die or das) is difficult while building vocabulary, so I wanted to create a learning tool to help.

Solution

I designed and built an open source client-side web app with Next.js called Wörtilizer, which you can try at wortilizer.vercel.app. Users can add words to their vocabulary, view them as color coded study cards, and take an interactive quiz on the articles.

Opting for a simple solution rather than AI, I used the german-words and german-words-dict npm packages to check whether a word is German, whether it is a noun, and which article it takes. Users just type a noun and the app adds it with the correct der, die or das.

To let people start right away, I skipped signup and login. The vocabulary is stored in the browser’s localStorage, which keeps it private. The layout is responsive, so it works on any device.

Reflections

I use the app regularly myself and find it very helpful. However, some limitations can be easily noticed.

The dictionary recognizes most words but not all of them, and words must be spelled correctly to be recognized. I decided to keep that as a feature rather than a bug: it nudges learners to practice correct spelling.

Skipping login made the app instant to start, but it comes with a trade-off: the vocabulary doesn’t sync across devices, and it is lost if the browser data is cleared. In practice this barely mattered. I mostly used the app on my phone on public transportation, and when my data was cleared I simply started a new vocabulary, since I had already memorized the old words. Still, saving vocabularies beyond the browser would be a useful next step, and like any project, there are many more features I could add.

Want to work together?

Let me know what you need.

Contact me