Anki
Flashcard program using spaced repetition learning
Anki is a program designed to help you remember facts using spaced
repetition — a learning technique that shows you cards at increasing
intervals as you learn them.
It supports text, images, audio, video and scientific markup on cards,
synchronization across devices via AnkiWeb, and a large library of
shared decks for languages, medicine, geography, and many other subjects.
Home page: https://apps.ankiweb.net/