Rinse the fresh cranberries under cold water and remove any stems or bruised berries.
In a medium saucepan over medium heat, combine the cranberries, granulated sugar, orange juice, orange zest, ground cinnamon, ground ginger, and a pinch of salt.
Cook the mixture, stirring occasionally until the cranberries begin to burst, about 10 minutes.
Reduce the heat to low and simmer for an additional 5 minutes until the sauce thickens slightly, stirring often.
If desired, stir in the chopped walnuts or pecans for added texture and flavor.
Remove the saucepan from heat and allow the relish to cool to room temperature. Once cooled, transfer to an airtight container and refrigerate for at least 2 hours or overnight for the best flavor.
Notes
Serve in a decorative dish, garnished with orange zest or mint.