MO files
MO, or Machine Object is a binary data file that contains object data referenced
by a program. It is typically used to translate program code, and may be loaded
or imported into the GNU gettext program.
PO files
PO files are the files which contain the actual translations. Each language will
have its own PO file, for example, for French there would be a fr.po file, for
german there would be a de.po, for American English there might be en-US.po.
POT file
POT files are the template files for PO files. They will have all the translation
strings left empty. A POT file is essentially an empty PO file without the
translations, with just the original strings.