1. A computer-implemented method, comprising: receiving, at a server having one or more processors and from a computing device via a network, a selected word in a source language, the computing device being associated with a user; obtaining, by the server, one or more parts of speech for the selected word; for each of the one or more parts-of-speech, obtaining, by the server, candidate translations of the selected word to a different target language, each candidate translation corresponding to a particular semantic meaning of a plurality of semantic meanings of the selected word; for each particular semantic meaning of the selected word: obtaining, by the server, an image corresponding to the particular semantic meaning of the selected word, obtaining an example sentence in the source language that includes a form of the selected word and is descriptive of a context of the corresponding image, compiling, by the server, translation information including (i) the particular semantic meaning, (ii) a corresponding part-of-speech, (iii) the image, (iv) the example sentence, and (v) at least one corresponding candidate translation, and generating, by the server, a translation card or an instruction to generate the translation card, the translation card comprising the translation information; and outputting, by the server and to the computing device via the network, the plurality of translation cards or the plurality of instructions, wherein receipt of the plurality of translation cards or the plurality of instructions causes the computing device to: render at least one of a first set of the plurality of translation cards on a display of the computing device; and render a selectable icon on the display, the selectable icon being configured to, upon its selection, render at least one of a different second set of the plurality of translation cards on the display.