Heat oven to 375° Fahrenheit.
In an 8- to 12-inch skillet, heat oil over medium-high heat. Add onions, garlic and chopped peppers and cook for approximately 5 minutes, stirring from time to time.
Add cumin, paprika, turmeric and sea salt. Stir for another 2 minutes.
In a separate bowl, add canned tomatoes and mash with a potato masher. Add chopped tomatoes once smooth.
Add tomatoes mixture, harissa and water to the pan with vegetables. Bring mixture to a boil. Then reduce heat to a simmer. Cook sauce for approximately 15 minutes, stirring occasionally. Add pepper to taste and more salt if needed.
Crack eggs over sauce. Try to distribute them evenly. If there are just two of you eating, you can use an 8- to 10-inch skillet and just two or three eggs. For more guests, you can use the 12-inch skillet with more eggs.
Place the skillet in the oven and cook for 4-7 minutes until the eggs are just set — the whites have just turned opaque and the yolk is set, but still runny.
If adding cheese, sprinkle it over the Shakshuka before the dish goes into the oven or sprinkle it halfway through cooking. You can also wait and sprinkle the cheese on top immediately after you take the dish out of the oven.
Once the Shakshuka is removed from the oven, top it with cilantro or parsley.
Let the Shakshuka rest until warm. Then serve with bread and, if you'd like, a side dish of your choice.