Heat the olive oil in a large pan over medium heat. Add the shallot and sauté until it becomes translucent.
Stir in the cumin and cinnamon and continue to sauté for a minute until the spices are fragrant.
Add the vegetable broth to the pan and bring to a boil. Once boiling, stir in the couscous. Remove the pan from the heat, cover, and let the couscous absorb the broth for about 5-7 minutes, until it's soft and all the liquid is absorbed.
In the meantime, toast the pine nuts or almonds in a separate pan until golden brown. Be sure to stir frequently to prevent them from burning.
Once the couscous is ready, fluff it with a fork to separate the grains. Add the toasted almonds or pine nuts, raisins or apricots, lemon juice, and fresh parsley. Stir everything together and season with salt and pepper to taste.
Serve the Moroccan couscous warm as a side dish or main course.