Preheat oven to 375 degrees. Spray an 9 inch pie pan (or 9 inch oven safe skillet or 9 inch baking pan) with cooking spray and set aside. Next, trim the tough ends off of the asparagus (usually the bottom 1-2 inches of the asparagus), and rinse well.
Chop the asparagus into bite size pieces (keep a few whole for topping), and place in small bowl. Add the chopped onion too the bowl, as well as 1/2 cup water and microwave for 2 minutes to steam the asparagus. Drain excess water and let cool.
Note: Instead of steaming, you could sauté the asparagus and onion for a few minutes in a sauté pan until they are both slightly tender.
Meanwhile, combine the rest of the ingredients in a medium mixing bowl and mix. (Add optional ham or bacon here if desired). Pour into pie plate (or oven safe skillet).
Sprinkle the tender onions and asparagus throughout the quiche. Bake in preheated oven for 20 minutes. Remove from the oven and add additional cheese, and a few whole asparagus, and tomatoes if desired. Return to the oven and bake for an additional 20-25 minutes, or until filling is set. To get the top of the quiche lightly golden brown (if desired) Turn heat up to 425 and bake an additional 5-10 minutes. Let rest for at least 5 minutes, and cut into 8 slices. Enjoy!