Anki (/ˈɒŋkiː/; Japanese: [aŋki]) is a free and open-source flashcard program using spaced repetition, a technique from cognitive science for memorization. The name comes from the Japanese word for "memorization" (). The SM-2 algorithm, created for SuperMemo in the late 1980s, forms the basis of the spaced repetition methods employed in the program. Anki's implementation of the algorithm has been modified to allow priorities on cards and to show flashcards in order of their urgency. The cards are presented using HTML and may include text, images, sounds, videos, and LaTeX equations. The decks of cards, along with the user's statistics, are stored in the open SQLite format. Features Notes Cards are generated from information stored as "notes". Notes are analogous to database entries and can have an arbitrary number of fields. For example, with respect to learning a language, a note may have the following fields and example entries: Field 1: Expression in target language – Field 2: Pronunciation – [sound file with the word pronounced] Field 3: Meaning of expression in familiar language – "cake" This example illustrates what some programs call a three-sided flashcard, but Anki's model is more general and allows any number of fields to be combined in various cards. The user can design cards that test the information contained in each note. One card may have a question (expression) and an answer (pronunciation, meaning). By keeping the separate cards linked to the same fact, spelling mistakes can be adjusted against all cards at the same time, and Anki can ensure that related cards are not shown in too short a spacing. A special note type allows generation of cloze deletion cards (in Anki 1.2.x, those were ordinary cards with cloze markup added using a tool in the fact editor). Syncing Anki supports synchronization with a free (but proprietary) online service called AnkiWeb. This allows users to keep decks synchronized across multiple computers and to study online or on a cell phone. There also is a third-party open-source (AGPLv3) AnkiWeb alternative, called ankisyncd, which users can run on their own local computers or servers. Japanese and Chinese reading generation Anki can automatically fill in the reading of Japanese and Chinese text. Since version 0.9.9.8.2, these features are in separate plug-ins. Add-ons More than 750 add-ons for Anki are available, often written by third-party developers. They provide support for speech synthesis, enhanced user statistics, image occlusion, incremental