Begin by cooking the pasta. In a large pot, bring salted water to a boil. Add the pasta and cook according to package instructions until al dente. Once done, drain in a colander and set aside.
While the pasta cooks, heat olive oil in a skillet over medium heat. Add the chopped onion and sauté for about 3-4 minutes until translucent.
Stir in the minced garlic and cook for an additional 1 minute until fragrant.
Add the ground beef to the skillet. Use a wooden spoon to break it apart and cook until browned, which should take about 5-7 minutes. Drain any excess fat if necessary.
Once the beef is browned, stir in the crushed tomatoes, tomato paste, oregano, basil, salt, pepper, and red pepper flakes (if using). Cook the mixture for about 10 minutes, allowing the flavors to meld.
Combine the cooked pasta with the beef sauce in the skillet. Toss well to ensure the pasta is coated evenly with the sauce.
Serve hot, garnished with grated Parmesan cheese on top.