Both Sketch & Figma have support for using component libraries, but the experience of using them feels far less central to the design process than they need to be. Finding and using a component in a library is how I think 90% of design work should begin. Right now, the discoverability of components, and the lack of support for including rich documentation which explains how and when to use a component place a barrier between a designer, and the systems created to make them efficient.
Knowing from CSS how easy it can be to inherit a property and reuse classes, I find the management of symbols (with all of that nesting) to be cumbersome. The design tools we have maximise for flexibility and freedom of the designer. I would gladly sacrifice some of that in favour of a better awareness of the conventions of the medium I’m designing for (breakpoints, flex, grid behaviour, box model, etc.).
In most cases, what makes the most sense is to move as quickly as possible to the browser: pixel perfect designs are never going to be of much value, as they’re always just a stepping stone to get elsewhere. Treat them as you treat documentation and other assets.
A Sketch library—or any collected drawings of software—can be a canonical UI reference only when the design is first conceived. Once the design gets into code, the product itself should be the reference, and fresh design should work on top of that foundation. It’s more important that our design libraries reflect what’s in the code than the reverse. Production code—and the UI it generates—has to be the single source of truth, or madness ensues.