End of August, Sketch released a new feature in their beta version: Sketch Libraries.
And Sketch Libraries are 💥💥💥 😱 🎉💃🏻 💥💥💥!
You can read about it and/or learn how to use some Sketch files as Libraries with Pablo Stanley’s tutorial video:
Great, but, how does it work with Abstract?!
As Sketch users, Abstract (launched publicly in July) was the perfect solution to fight all the issues we had around collaboration (many designers working on the same file) and versioning (mocks-final-final-v4.sketch).
- 🏴 Abstract helps to collaborate and version on a sketch file;
- 💎 Sketch Libraries help to collaborate on a design system.
So, can we work with both of them?
The way 💎 Sketch refers to Libraries
Libraries are declared in Sketch’s Preferences, which means that they will be available for any file opened in Sketch.
The reference to a Library is made through the name of the file and its location.
The way 🏴 Abstract works with the file system
Abstract follows a Git logic: a project (repository) is made of a main branch (Master) and working branches (feat/homepage in this example).
Because of this structure, and because it’s collaboration and versioning oriented, one sketch file doesn’t exist as a single sketch file in the file system, but as many instances of this same sketch file.
So, is it a match?
If we follow some Atomic Design nomenclature, there is no way to both collaborate and version 🏴 on an atom Sketch file (like Colors.sketch or Buttons.sketch) and to use it as a Library 💎.
On the other hand, we could use Abstract to collaborate and version on a page Sketch file. This page Sketch file would be able to use Libraries.
A possible architecture
Let’s consider the following assumptions:
- Each atom, molecule, organism has one and only one owner;
- Pages (or “screens”) need both collaboration and versioning;
- Sketch and Abstract would work together as I could force Sketch Beta to work with Abstract.
In this architecture:
- A designer, owner of an atom, a molecule or an organism, can create and update her/his component and make it visible and usable by the others (through Libraries);
- A designer, working with other designers on a page (or “screen”) can collaborate and version her/his changes, while using the components from the Libraries.
Because of the third assumption at the origin of this potential architecture, this workflow would need to be tested with the stable release version of Sketch 47.