01 - Preheat oven to 375°F. Lightly grease a 9×13 inch baking dish with cooking spray or oil.
02 - Heat olive oil in a large skillet over medium heat. Sauté chopped onion for 3-4 minutes until translucent. Add minced garlic and cook 1 minute more until fragrant.
03 - Add ground beef to the skillet. Cook until browned, breaking up meat with a wooden spoon. Drain excess fat and return to heat.
04 - Stir in crushed tomatoes, tomato sauce, tomato paste, basil, oregano, red pepper flakes, sugar, salt, and pepper. Simmer uncovered for 15-20 minutes, stirring occasionally until slightly thickened.
05 - Boil manicotti shells in salted water for 1-2 minutes less than package instructions. Drain and rinse gently with cold water to stop cooking process. Set aside.
06 - Combine ricotta, mozzarella, Parmesan, egg, parsley, nutmeg, salt, and black pepper in a large bowl. Mix until smooth and fully incorporated.
07 - Transfer cheese mixture to a piping bag or zip-top bag with corner snipped. Pipe filling into each manicotti shell until evenly filled.
08 - Spread 1 cup meat sauce over bottom of prepared baking dish. Arrange filled manicotti in single layer over sauce. Pour remaining meat sauce evenly over pasta.
09 - Sprinkle remaining mozzarella and Parmesan cheese over top. Cover baking dish tightly with aluminum foil.
10 - Bake covered for 25 minutes. Remove foil and continue baking for 10-15 minutes until cheese is bubbly and golden brown.
11 - Let manicotti rest for 10 minutes before serving to allow flavors to settle. Garnish with fresh basil or parsley if desired.