Skip to content

A Tkinter-based Python application for interactive French-to-English vocabulary learning with spaced repetition logic.

Notifications You must be signed in to change notification settings

TediTae/flashcards-project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

3 Commits
Β 
Β 
Β 
Β 

Repository files navigation

🧠 Flashcards – Learn French Vocabulary

Flashcards is an interactive Python application designed to help you memorize French vocabulary efficiently.
It uses a simple flashcard mechanism: first shows you the French word, then flips the card after 3 seconds to reveal the English translation.
If you know the word, simply click the βœ… button β€” the word will be removed from your learning list!


✨ Features

  • πŸ•’ Timed card flip from French to English (3 seconds)
  • βœ… Mark known words to remove them from future sessions
  • πŸ“„ Automatically saves progress in words_to_learn.csv
  • πŸ–ΌοΈ Simple, clean and responsive GUI with Tkinter
  • πŸ“Š Uses pandas for data handling

πŸš€ Getting Started

1. Clone the Repository

2. Install Dependencies

  • Only one external dependency is needed:
  • pip install pandas

3. Run the app: main.py


πŸ—‚οΈ Project Structure

flashcards/ β”œβ”€β”€ data/ β”‚ β”œβ”€β”€ french_words.csv # The main word list β”‚ └── words_to_learn.csv # Generated automatically β”œβ”€β”€ images/ β”‚ β”œβ”€β”€ card_front.png β”‚ β”œβ”€β”€ card_back.png β”‚ β”œβ”€β”€ right.png β”‚ └── wrong.png β”œβ”€β”€ main.py


🧠 How It Works

  • A random French word is displayed.
  • After 3 seconds, the card flips to show its English meaning.
  • If you know the word, click βœ… to remove it from your word list.
  • Otherwise, click ❌ to skip and move to the next word.
  • Your learning progress is saved automatically.

πŸ› οΈ Requirements

  • Python 3.x
  • pandas
  • tkinter (usually pre-installed with Python)

🎯 Future Improvements (Ideas)

  • Add support for custom word lists
  • Support multiple languages
  • Track learning statistics
  • Add dark mode UI
  • Spaced repetition algorithm

πŸ“ƒ License

  • This project is licensed under the MIT License.
  • Feel free to use, modify, and share it.

πŸ™Œ Acknowledgments

  • Special thanks to the 100 Days of Code course by Angela Yu which inspired this project.

Contact

About

A Tkinter-based Python application for interactive French-to-English vocabulary learning with spaced repetition logic.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages