Heat the olive oil in a large pot or Dutch oven over medium heat.
Add the onion and cook until softened, about 5 minutes.
Add the garlic and ginger and cook for another minute.
Add the ras el hanout, cumin, coriander, cinnamon, turmeric, paprika, and cayenne pepper, and cook for another minute, stirring constantly.
Add the broth, diced tomatoes (with juices), sweet potatoes, zucchini, chickpeas, dried apricots, and honey.
Bring the stew to a boil, then reduce the heat and simmer for 30-40 minutes, or until the vegetables are tender.
Season with salt and pepper to taste.
Serve the stew in bowls, garnished with fresh cilantro leaves.