Примерно такой функционал есть в Шопере. Тут пример:
https://demo.shopker.org/katalog/odezhda-obuv-sumki/obuv/muzhskaya-obuv/krossovki-adidas-neo-10k-casual
Только вместо картинок цвета - текст. В админке указывается номер картинки. После выбора цвета эта картинка выводится в корзине.
Вообще такой функционал можно сделать на любом JS-фреймворке или на обычном JavaScript.