tldr; – I´m looking for best practices in managing larger scale design systems in Sketch Workspaces.
Switching to Sketch Workspaces has been overwhelmingly welcomed by every designer I´ve talked to. However, being part of the team responsible for building/maintaining company-wide libraries, we face some process challenges. Seems like much of what makes workspaces great for end users can get rather counter-productive from a design system team´s perspective.
- There is no way of telling the difference between two versions of the same file, meaning that even within our small group of maintainers, technically anything can go into our libraries without getting recognized*. This makes it hardly possibly to properly document changes to the libraries
- We use a waterfall-ish library structure, meaning that our Design Tokens for example get consumed by libraries down stream. Making an update to Tokens requires them to get published (star-saved) in order to check for side effects in libraries consuming the Tokens.
- Publishing a library has become so easy that now we need a strict process helping us to avoid accidental or undocumented publishing. At the same time, we need some sort of release planning not only to stay in sync with coded components, but frontmost to not get blocked from publishing a library update by unfinnished work in progress
We try to work around these issues by building tools and establishing very strict processes. New components get built in isolated sandbox documents to make sure only thoroughly prepared, tested and reviewed content goes into our libraries.
We´re a service team - we don´t mind walking an extra mile. But relying on everyone´s discipline alone in following a strict, very manual multi-step process would never be my first choice when it comes to QA.
Yet, there seems to be no other way. Or maybe I´m overthinking it?
Is there a more practial way especially for larger scale teams?
Any advise or best practice would help a lot!
Thanks in advance
* Our files are rather large. We´ve built ourselves a solution using sketchtools and a 3rd party visual regression testing tool. We link results up to Jira tasks to test and document changes