1. You can make separate batches of different colors, or one large batch of a single color. Follow the ratios given above for each ingredient to make more or less dye.
2. Add water to a saucepan. Pour the amount of water you need for the dye you’re making into a saucepan.
3. Start making the dye. Add the dye matter (purple cabbage, onion skins, etc.) and bring the water to a boil.
4. Adjust the heat. Turn the heat down to low and simmer, covered, for 15 to 30 minutes.
5. Check the color. The dye is ready when it reaches a hue a few shades darker than you want for your egg. Drip a little dye onto a white dish to check the color. When the dye is as dark as you like, remove the pan from the heat and let the dye cool to room temperature. (Try letting it cool outside!)
6. Strain the dye. Pour the cooled dye through a fine-mesh strainer into another saucepan.
7. Add vinegar. Stir the vinegar into the dye — use 1 tablespoon of vinegar per cup of strained liquid.
8. Pour the dye over the eggs. Arrange the room-temperature eggs in single layer in a baking dish or other container and carefully pour the cooled dye over them. Make sure the eggs are completely submerged.
9. Put the eggs in the fridge. Transfer the eggs in the dye to the refrigerator and chill until the desired color is reached.
(If you want your eggs to be more vibrant and less pastel, give the eggs multiple soaks in the dye, being sure to dry them between stints in the dye.)
10. Dry and oil the eggs. Carefully dry the eggs, and then massage in a little grapeseed oil to each one. Polish with a paper towel. Store the eggs in the refrigerator until it is time to eat (or hide) them!