Set the oven to a broil and position the oven rack in the top position. Heat a large ovenproof skillet to medium heat. Coat with oil and toss in the onion. Cook for 3-4 minutes until softened, then add the bell pepper. Continue to stir and cook for another 3 minutes.
Add the paprika, cumin, crushed red pepper (if using), and salt to the vegetable mixture. Now add in the tomatoes with their juices, and drained artichoke hearts. Continue to cook for another 8 to 10 minutes over medium heat.
Create 4-5 wells in the tomato sauce with a wooden spoon. Crack and place an egg in each of the wells. Cover the pan with a lid and reduce the heat to a simmer. Cook for about 5 minutes until the egg whites are almost set.
Remove the lid and place the pan under the broiler for 1 minute, or until eggs are done to your liking (cook for at least 2 minutes for a hard yolk).
Serve hot with fresh cilantro or parsley, along with feta cheese (if using).
Notes
*I prefer San Marzano tomatoes because of their high quality and extra rich flavor they provide