Layered Color Method
Marlin firmware supports the M600 GCODE command for filament swapping, which with a little planning can be used to achieve multicolor prints on a single extruder 3D printer.
By creating designs that separate colors by layer height, you can stack any number of colors upon the previous layers. It takes a little forethought, but the results can be rewarding. This method works great for custom signs, clocks, plaques - any two dimensional art that could use a little color.
NyanCat is available on Cults3D: https://cults3d.com/en/3d-model/art/nyancat-optimized-for-m600-filament-swap-multicolor-printing