Могу сказать, судя по исходному коду на Twitter'е, на странице вместо самого *.gif вставляется (первый) кадр из него, а уже потом по действиям пользователя (например, когда картинка находится в зоне viewport'а, т.е. пользователь прокрутил (проскроллил) статичная картинка заменяется на оригинальное изображение *.gif.
По поводу того, как обрабатывать gif и "выбирать" из них кадр, думаю надо посмотреть на ImageMagick или пакеты node.js, например, т.к. этот процесс осуществляется скорее всего на серверной стороне.