Heat olive oil in a large skillet over medium heat. Add chopped onion and cook for about 2-3 minutes until softened.
Add minced garlic and cook for an additional minute until fragrant.
Increase the heat to medium-high and add the ground beef to the skillet, breaking it apart with a spatula. Cook until browned, about 5-7 minutes. Drain excess fat if necessary.
Stir in the taco seasoning and water, mixing well. Bring the mixture to a simmer and let it cook for 3-5 minutes until thickened.
While the beef is cooking, prepare your toppings by shredding the lettuce, dicing the tomatoes, and shredding the cheese.
Heat the taco shells according to package instructions.
To assemble, place a portion of the beef mixture in each taco shell. Top with lettuce, tomatoes, cheese, sour cream, and salsa. Add any additional toppings if desired.
Serve immediately and enjoy your homemade ground beef tacos!