Matching eyeshadow with eye colour:
With blue eyes, you should stay far away from blue eyeshadow. If you want you eyes to pop and look mesmerizing then try wearing earth-tones, such as browns with a slight purple base, taupe, and slate colored grays. If you want to have a little fun outside of the earth-tones, then try a nice rose colored eyeshadow. The coolness from the pink/purple eyeshadow will be a really nice contrast to your blue eyes.
Brown eyes can get away with wearing almost any color of eyeshadow. But if you want you eyes to pop then try either green eyeshadow or pink eyeshadow. With brown eyes, you can also use blue eyeshadow, and if you have gold flecks in your eyes you may want to try an eyeshadow that has a gold shimmer to it. Brown eyes can even pull-off wearing brown eyeshadow, but be careful because certain tones can look muddy against your beautiful brown eyes.
In order to get green eyes to pop, you should try wearing various purple shades. The contrast in color to your eyes will make them seem more dramatic. If you want your eyes to stand out but look more natural, you may want to try warmer mocha brown shades or warm colors with slight orange undertones. Basic eyeshadow colors for green eyes would be earth tones with slight hints of gold, taupe colors, mocha browns, and lavender-purple shades. Since most green and hazel eyes has a variety of flecks, feel free to experiment with these colors so you can find the perfect one for your eyes.