This is probably one of the simplest projects one can undertake. I read a website where someone suggested a similar sensor and was curious if it would work. Well some soldering, Polymorph, a bit of coding and 5 hours later I had a finished color sensor. The total cost of materials is about $2 and most hobbyists will have all these parts readily available. This project has proven to be popular as a tutorial in the US on LMR and in Russia on RoboCraft.
The principle of the design is very simple. Shine different colored light at an object and measure how much is reflected. Objects mostly reflect the color they appear to the human eye. Thus a blue object will reflect more blue light than any other color. You can now use this to determine what color an object is by shinning several lights on it and measuring the change in output.
The sensor works decently well for how simple it is, however the range is limited about 1 inch and if the objected is too angled it may not work at all. For best results keep the sensor normal to your sample surface. Future improvements on the projects can include using PWM to determine the exact tone of an object. Also modulation may be possible but some other sensor other than a photo resistor must be used (photo resistors don't have the response time for it). Perhpas a TSL230 or similar.
The Super Simple Schematic
Make Sure to Check the Luminosity Curve of Your LEDs and Pick Correct Resistor Values
Finished Sensor Encased in Polymorph