Design System Workflows

Hi there!

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.

Some examples:

  • 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 :slight_smile:

* 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

3 Likes

Hi Stefan thanks for all the great feedback. This helps us understand better your needs so we can improve Sketch and make it better for what our customers need :blush:

Let me address some solutions that might help towards the situations you mentioned in your post:

  • You can always preview the differences between versions by going to a previous version on the Workspace web app and taking a look at the changes. But I understand that can get impractical fast. The practice we recommend is to add descriptions to versions that include the important changes made. That way is easy to know what are the big changes from version to version.
  • You could have a preview page right inside your library with some demo content consuming the library content. That way you can see how changes to tokens can affect your designs without having to star the version to preview it.
  • The only way to restrict publishing changes is by using the star versions. I can see that you’re already using that feature so I’d suggest setting some ground rules before adding stars to versions in your libraries. But I understand that you’ll rely on the discipline of the team.

This serves us as feedback to help us build more robust features to the platform. I’d love to get in touch to document your needs better, seems like you guys are pushing Sketch intensely and I’d love to learn more about your needs and requirements. If you’d like for us to get in a quick call to explore some of this please reach out to me at jaime@sketch.com