Code Monkey home page Code Monkey logo

italian-vocabulary-builder's Introduction

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.

italian-vocabulary-builder's People

Contributors

apostaremczak avatar dependabot[bot] avatar

Stargazers

 avatar

Watchers

 avatar  avatar

italian-vocabulary-builder's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.