All projects
Software

Classical Arabic Flashcards

A Python flashcard app for Classical Arabic vocabulary. It reveals translations and saves the words still being learned.

Screenshot of the flashcard app’s Python source on GitHub
Source code

The problem

I wanted a small desktop tool for practicing Classical Arabic vocabulary, with a way to carry unfinished words into the next session.

How it works

The Python application uses Tkinter for the interface and Pandas to read the vocabulary CSV. It chooses a random word from the remaining deck, shows the Arabic, and reveals the English translation after three seconds.

Marking a word as known removes it from the active list and saves the remaining words to a CSV file. The next session loads that file so practice can continue from the saved deck.

Implementation

  • Tkinter canvas for the card and timed translation reveal
  • Random selection from the remaining vocabulary
  • A known-word action that removes mastered cards
  • CSV persistence using Pandas

This is a simple practice tool. It does not implement a scheduled spaced-repetition algorithm or due-date model.

View the repository.

View Markdown on GitHubRepository