Thaw and squeeze dry the spinach in paper towel. Try to get as much water out as possible. Set aside.
Preheat the oven to 375 degrees.
Bring a large pot of water to a boil with a teaspoon or so of salt and roughly a tablespoon of olive oil. Cook the pasta according to package directions. Stir regularly to prevent shells from sticking to the bottom of the pot. Drain, rinse under cold water and set aside. We usually just leave them in the sink.
Lightly spray 2 8x8 pans, a 9x13 inch pan or the equivalent with cooking spray.
Coat the bottom of each pan with tomato sauce, either store bought or my homemade marinara sauce. Set aside.
In a medium skillet, heat 2-3 tablespoons of olive oil over medium heat. Add the onions, mushrooms and garlic and cook, stirring frequently until tender, around 5 minutes. Add the ground meat or meats and cook, stirring regularly, until done. Add the squeezed spinach and continue stirring for a few more minutes. Add salt and pepper and remove from heat.
In a separate, large bowl, whip together the ricotta cheese, eggs, Parmesan cheese, and 1 cup of mozzarella cheese. Next add the meat mixture, 1 tablespoon of olive oil and Italian seasoning to the ricotta mixture. Stir to combine thoroughly.
Spoon about 2 ½ tablespoons of the filling into each cooked pasta shell. Place the filled shells in the prepared dish or dishes with the opening facing up. Don't use the broken pasta shells unless you have to. You will likely have some extras. Each shell should be over flowing and touching each other.
Pour more marinara sauce over the filled shells and top with mozzarella cheese. Bake, uncovered, for 25 minutes. Then turn the oven up to broil for a few minutes until cheese is nicely browned if desired. Remove from the oven and let rest for 5 minutes before serving. Enjoy!