Skip to main content

A simple GUI to generate flashcards for memorizing vocabulary, grammar and phrases of a foreign language.

Install

pip install memoria-gui

Using memoria

python gui.py from the terminal produces a GUI with which you choose:

  • a book to draw entries from,
  • which chapters in the book to draw from,
  • which type of entry to draw (vocabulary, grammar or phrases), and
  • in which language to display the entries on the flashcards (English or the foreign language).

Grids of flashcards are then generated, spanning all the entries of the chosen type from the chosen source, with the order randomized. Clicking on a flashcard shows its English/foreign language counterpart (or in the case of grammar, the relevant forms).

memoria is currently tailored to Italian, but it's easy to drop in another language (it might eventually support Ancient Greek and Latin) - just add new dictionaries with the English and foreign language counterparts.

Using memoria for Italian

For Italian specifically:

  • Clicking on a vocabulary flashcard a second time opens the WordReference website with a search for the word to obtain its dictionary entry.
  • Clicking on a verb flashcard a second time opens the Virgilio website with a search for the verb to obtain its conjugations in all tenses.
  • Clicking on other grammar or phrase flashcards a second time opens google translate with the Italian version of the entry, so that you can hear it spoken by clicking on the speaker icon there.
  • If you're interested in learning Italian, these are the books I'm using (and the source of flashcard entries in the code). Together I think they should provide a good teaching of CEFR levels A1 - C2 of the language (i.e., from beginner to fluent), including a strong understanding of the grammar:
    • New Italian Espresso - Beginner and Pre-intermediate (CEFR level A0 - A1.5) and Intermediate and Advanced (CEFR level A1.5 - B1) - the textbooks and workbooks
    • Nuovo Espresso 4, 5, 6 (CEFR levels B2, C1, C2) - these books are only in Italian
    • English Grammar for Students of Italian
    • Italian Grammar in Practice (covering CEFR levels A1 - B2)
    • Pocket Italian Grammar

Background

This package is mostly me wanting a fast way to study Italian and learning how to make GUIs in Python with tkinter. I've only been using Mac OS, so the formatting of the GUIs might be off on Linux or Windows. If you want to use and/or customize the code for your own language and you'd like some help, or if you have any suggestions, feel free to open an issue!

memoria is Latin (and Italian!) for 'memory, remembrance'. Hence the Latin phrase 'In memoriam' and the English derivatives 'memorial' and 'memoir'.

The logo is a Roman mosaic showing μνημοσύνη (Mnemosyne), the Greek Titan of memory and mother of the nine Muses. μνήμη is Greek for 'memory, remembrance' and is the origin of the English derivative 'mnemonic'.

Release files for memoria-gui 0.1.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for memoria-gui 0.1.3
File Size Uploaded
memoria-gui-0.1.3.tar.gz 10.0 kB Details

Release files / memoria-gui-0.1.3.tar.gz

Download URL memoria-gui-0.1.3.tar.gz
Size 10.0 kB
Tags Source
SHA-256 checksum
How to use checksums
a7cde5e5071e9da2ed94a6354a15c71a8a459baade43726af867cf13e5160d91
BLAKE2b-256 checksum
How to use checksums
0923b05d13f175150a76b3697fe7af4f664007ed0e888bb052cdc9a44ee2550f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/3.7.1 importlib_metadata/6.0.0 pkginfo/1.9.6 requests/2.31.0 requests-toolbelt/1.0.0 tqdm/4.65.0 CPython/3.9.16

Release history Release notifications | RSS feed

This release

0.1.3 This release

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page