1. A computer-implemented method comprising: automatically selecting, by a computer, from a keyword store a set of one or more target words stored in the keyword store, each respective target word having a word difficulty score based upon one or more skill scores of a learner-record stored in a learner database, wherein the keyword store is configured to store metadata associated with each respective target word, and wherein the metadata associated with each respective target word in the keyword word store indicates the word difficulty score of the respective target word; generating, by the computer, a set of one or more syntactic distractors comprising one or more words having a same root word as the target word and having a grammatical difference; and generating, by the computer, at least one more distractor from a group of: a set of one or more semantic distractors comprising one or more words having a definition that is related to a target word, a set of one or more orthographic distractors comprising one or more words of the plurality of words having an edit distance of each respective word satisfying an edit distance amount setting, wherein the edit distance of the word is a number of changes required to the word to be identical to the target word, and wherein the edit distance amount setting determines the number of changes to the word, and, a set of phonetic distractors comprising one or more homophones of the target word, based upon the one or more skill scores of the learner-record.