Learn Languages with Balalingo

Reading foreign language texts made simple (and thus more fun)

Screenshot of Balalingo

Balalingo is a desktop application for foreign language learners to support learning foreign languages with authentic materials. It highlights unknown words in texts, allows you to look them up in a dictionary and can update your newly learnt words from other data sources like Anki.

Let's see an example for that: Let's say you're learning French and want to understand lyrics of French songs. You use Anki to learn French vocabulary.

Balalingo uses text analysis (some people nowadays would say AI...) to make sure that words with different inflections are considered the same word (e.g. runs and running).


Balalingo is only the graphical user interface, it also requires a Text Analysis Server called NLParrot to work. This used to be distributed via Dockerhub, but I don't want to manage that account any longer. So, currently I don't distribute NLParrot at all.


You can run Balalingo by executing the file balalingo/balalingo from the downloaded package. When you first start Balalingo you should configure it. For this choose Options → Options in Balalingo. Some configuration options apply immediately, some require a restart (there is no clear distinction, yet), so please restart Balalingo.


Simplifying your language learning endeveaour

Supported Languages

Balalingo supports the following languages:


The following dictionaries are supported:

Support for these dictionaries might come in the future:

All Download Options


Balalingo is still in a very rough state, because it's developed primarily for myself. If you have questions, feel free to send me a mail.