Bring a large pot of salted water to a boil. Add the pasta and cook according to package instructions until al dente, about 8-10 minutes. Drain and set aside.
While the pasta is cooking, heat the olive oil in a skillet over medium heat. Add the diced onion and cook until translucent, about 3-4 minutes.
Add the minced garlic to the skillet and sauté for another minute until fragrant.
Increase the heat to medium-high and add the ground beef to the skillet. Cook until browned, breaking it up with a wooden spoon, for about 5-7 minutes. Drain excess fat if necessary.
Stir in the can of diced tomatoes, tomato paste, oregano, basil, salt, and pepper. Bring the mixture to a simmer and cook for another 5 minutes, allowing the flavors to meld together.
Combine the cooked pasta into the skillet with the beef and tomato sauce, tossing everything together until evenly coated.
Serve hot, topped with grated Parmesan cheese and fresh basil if desired.