Begin by toasting your hazelnuts to enhance their flavor. Preheat your oven to 350°F (175°C) and spread the hazelnuts in a single layer on a baking sheet. Toast them in the oven for about 10-12 minutes, or until they're golden brown and fragrant. Once toasted, wrap the hazelnuts in a kitchen towel and rub them to remove as much of the skin as possible.
When the peeled hazelnuts have cooled, transfer them to a food processor and grind them to a fine paste. This may take several minutes, and you should scrape down the sides of the food processor periodically to ensure an even consistency. You're aiming for a smooth, buttery texture, similar to that of smooth peanut butter.
Then chop your chocolate into small pieces and place it in a heatproof bowl along with the cocoa butter (and coconut oil, if using; see notes below). Melt them together using a double boiler or by microwaving in short bursts, stirring frequently until smooth and evenly-melted.
Once the chocolate and cocoa butter mixture is melted and combined, add the hazelnut paste to the bowl and mix thoroughly.
Sift your icing sugar to remove any lumps, then add it to the chocolate-hazelnut mixture. Add a pinch of sea salt if using, and stir until everything is well incorporated and smooth.
Pour the mixture into a lined tray or mold and smooth the top with a spatula, or pour it into a jar if making a gianduja spread. Allow it to set at room temperature or in the refrigerator if you prefer a firmer consistency.
Once set, cut the gianduja into pieces or use cut off chunks to use as a spread. It can be enjoyed on toast, as a filling for chocolates, or simply by the spoonful!
Keep your homemade gianduja in an airtight container at room temperature for up to 2 weeks, or in the refrigerator for up to a month. Keep your homemade gianduja in an airtight container at room temperature for up to 2 weeks, or in the refrigerator for up to a month.