Skip to content

A combined interface for Treccani, PONS, and Coniugazione.it. Translate a word, get its definition and exemplary sentences in one call.

Notifications You must be signed in to change notification settings

apostaremczak/italian-vocabulary-builder

Repository files navigation

Italian vocabulary builder 🇮🇹

A combined interface for Treccani, PONS, Reverso and Coniugazione.it. Translate a word, get its definition and exemplary sentences in one call.

Screenshot of the main page

Motivation 👩🏻‍🎓

When studying Italian and learning new vocabulary, for each word, I find myself repeating the same exact steps over and over again:

  • checking its translation to Polish and/or English,
  • searching for its definition, synonyms and exemplary sentences in Treccani,
  • listening to the proper pronunciation,
  • looking up its conjugation.

To speed up this process, I decided to write a bit of Python code, so that I have to only type a word once, without manually visiting multiple websites.

This app is intended only for personal, private use.

Screenshot of the results page

Sources

This interface uses two functions from Treccani:

⚠️ From my experience, using Reverso through the reverso_context_api client often leads to having your IP address temporarily banned. Use with caution.

I use Pons Online Dictionary API for translations. The POD-API is provided to you directly with a free quota of 1,000 reference queries per month.

Once you obtain the POD-API secret, place it in the .credentials file generated based on .credentials.template.

API Documentation

You can look up available dictionaries here.

Tip:

Try changing the initial input with one of the conjugated versions for more examples, e.g. change fare to faccia or facesse.

The free YouGlish plan allows up to 20 requests per day using this widget. Once this quota is exceeded, you can either purchase the premium plan or used the generated link to visit YouGlish in a new private/incognito tab.

Coniugazione.it is used to provide conjugation tables (for verbs only).

The results page contains a link to Forvo, so you can look up recordings with the correct pronunciation of searched words.

Running the app

Dev setup

  • Python version: 3.12.1
  • Flask

Run Flask

flask run

(...)

* Running on http://127.0.0.1:5000

Debug mode

When running the app in debug mode with

flask run --debug

some functionalities might change, such as:

  • YouGlish widget will not be displayed in order to save the free daily quota,
  • results will not be cached.