switching colors in PROGMEM stored icons

Yes, it is a good article. Wikipedia is good too.

I am sure that someone has written the code for a microcontroller already. I am not sure whether I have the enthusiasm.

Anyway, your ESP32 will be able to animate uncompressed bitmaps. The biggest advantage of GIF is that all the frames are stored in a single file.

David.