Library Component Overrides
In Sketch, when you have a library component, you can easily override the color and text in the side panel.
for example, I will use a button. In XD, if I create a button in a library and use the symbol in one of my files, in order to change the text of the button i have to edit the symbol instance. If I want the background of the button to be a different color, I once again have to edit the symbol instance. If I then make updates to the button (say, different corner rounding) in the library and go to update my button in my usage, the color reverts to the default color, and the text reverts to the default text.
In Sketch, in the same scenario, the color override and text override are handled in the overrides panel in the right nav pane, and maintain throughout library updates. I also have the power to assign the background color of the button to one of my color layer styles directly, which will easily let me pick another color layer style to override the color of the background.
The sketch way makes for a far more viable library system usage across various products. As of now, I cannot update my library in some of my files or else i get hundreds of buttons that revert themselves.
I would love to see XD Adopt a similar override panel system making it much easier for library components to be used in various scenarios without having to directly edit the symbol instance
-
Ian Stewart commented
There should also be a way to quickly change any nested icon symbols as an override.
For example, I should be able to create a single "Icon button" component with a normal and hover state. I should be able to add that icon button component multiple times to the canvas and quickly change the applied icon on each instance, as a component override, with any other library icon. That icon change should be applied to all states.