Over recent years, Sketch’s popularity and capability has grown, especially as almost each major release has brought with it the enhanced ability to power multiple interfaces by a central library of symbols. As these features have advanced, the laborious task of organising files, whether these files are local or now making use of Sketch Cloud, has become burdensome.
Introducing our product
Our product is a large, multi-tenant, white-label system used within the insurance domain. The product I work with is designed using Sketch and is driven by a central UI Library, within which, all interface elements and controls are displayed and defined with visual examples. Our central UI Library is built using the Atomic Design System approach and therefore includes Atom elements, Molecules, Organisms and Pages.
This central UI Library is the engine that powers every one of our clients tailored version of our product.
Each client journey uses the same Atom elements and the same Pages. Some page configurations may differ per client, some may have a large subset of pages while others a smaller number, though the commonality is that they all make use of the same Atoms and Molecules.
Our product allows surface level branding and customisation to ensure each client journey is visually unique, by this I mean the ability to change control colours, typography and some changes to the physical properties of controls such as button radius.
Providing a product within the insurance domain means a single client may also use our product for many lines of business (home claims, motor claims, gadget claims, etc). The user journey for each flow may look the same, and the user may be presented with the same pages, however, the question set and content within each journey is tailored to the line of business. This means that each user journey for the same client potentially requires its own individual Sketch file.
Our central UI Library not only powers each of our clients tailored journey, it also powers our own product demo which again includes different user journey variations.
As a result, organising Sketch files has proven difficult. Before we even onboard clients, we have our own central UI Library to manage and alongside this, we have our own product demos to manage. Add to the mix several journeys for each client, and many clients, our total number of files became substantial.
Before embarking on organisation solutions, I explored plugins that would assist the efficiency of updating client files each time I updated elements within our central UI Library. I also adopted the use of a GIT based version control to ensure every change of our central UI Library was tracked and annotated. Although these tools have proven to be incredibly powerful, they did not assist in how I approached organising our considerable number of Sketch files. This was very much a separate, deliberate and time-consuming task.
Organising Multiple Sketch files
After several failed attempts, I found several tips that I believe may help others organise an abundance of interlinked Sketch files. I’ve listed five of these below:
1. A single folder specifically for the central UI Library
The first tip is to completely isolate the central UI Library from client files. Doing so has the following advantages:
- It provides an element of authority and empowerment to the central UI Library
After all, this library is the heartbeat to all files and should be treated carefully and with respect.
- It assists discoverability
Although the central UI Library may not be accessed or changed as frequently as other files, it should be extremely easy to locate.
- It assists source control
Many of the source control products I explored all benefitted from identifying a single folder as its source folder. Ensuring the central UI Library is maintained within a single folder supports the use of version/source control products.
As the above image visualises, our central UI Library is isolated from all other design folders. By deliberately naming this folder with a ‘00’ prefix, I ensure the folder location and name will never move or change.
2. Control order with folder numbering
As the above image also illustrates, all of my folders are manually named to a specific naming convention. By prefixing all folder names numerically with ‘XX’, I’m able to build on finder’s alphabetical sort order and manually control the order of all folders and containing artwork. The benefits that this naming convention brings are:
- Easy to understand and adopt
A clear and deliberate folder naming convention is easy to understand especially for any new team members. This increases their adoption speed and reduces learning and effort.
- Reduces disarrangement of files
File placement becomes a deliberate task and files are no longer placed in any random folder without thought.
- Reduces folder expansion
The potential for new folders to be created mindlessly is reduced as folder names now have a specific naming convention which encourages good habits to be followed.
As illustrated above, naming folders by number creates a clear and well-structured folder system (names do not represent actual client names) which is easy to navigate for myself or anyone accessing the folder structure.
3. Individual sketch files per client configuration
Sketch files themselves also follow the naming convention which I’ve applied to folders. This ensures similar benefits are preserved; ease of discovery, clarity, prevents file expansion and so on.
After trial and error, I chose to adopt a single Sketch file per client configuration. As I eluded to earlier in the article, each individual client may have several user journeys. Therefore, an alternative option was to use pages within Sketch to contain each client configuration of our journey. Ultimately, I opted against this for a few reasons:
- Client configuration is provided at a glance
By opening each client folder I’m able to quickly view which lines of business clients have configured. I am not required to open the Sketch file to learn this.
- Reduced file size
Sketch is not a tool that uses excessive memory and file size, due to the nature of Sketch being vector based, amongst other reasons, remain small. However, when Sketch files have become large and contained numerous artboards and symbols, I’ve experienced slow response times so the separation of files helps to avoid this.
- Reduces potential bloating
I’ll explain this point a little more in my next tip, however, not only can each client have several configurations of our product, each client may have several iterations of its own journey. Using individual Sketch files per configuration provides scope to entertain journey iterations.
By adopting the same folder naming convention and applying this to individual Sketch files, a clear and easy to understand view of each client configuration can be seen without the effort of opening Sketch files.
4. Sketch pages for client iterations
As aforementioned in point 3, I use pages within Sketch for each new iteration or modification of the base client journey. Pages within Sketch are also given their own naming convention. The base journey is named to mirror the containing parent folder which ensures the correct design is being edited. For each iteration or modification to the journey, this is made on a new page within the same file. This page is named with the date on which the modification took place.
If I had not decided to use individual Sketch files for each client configuration, clients whom adopt several journey configurations and make modifications to these, would result in a chaotic and problematic organisation structure. This disorganisation would go against the simplistic folder structure I’ve built outside of Sketch.
The key advantages I’ve discovered using individual pages within one Sketch file are:
- Version control
Dating each page for each iteration or modification provides my own visual version control of the client journey. I can quickly learn how many modifications and the date these modifications took place.
- Cleaner artboards
As a result of all new changes happening on a new page, my artboards are cleaner and free from annotations.
- Source control
New pages assist my chosen GIT integration tool more easily than artboard changes within the same page. The tool I use for source control has an easier time recognising changes when a new page has been introduced as opposed to changes on existing artboards.
As the above image illustrates, using pages for each journey modification provides a clear view of not only how many modifications have been made but also the date that these changes were made.
Mirroring the folder name for the base journey also provides confirmation that the correct design is being edited.
5. Use of macOS Tags
My last tip is the use of macOS Tags. I’m a big lover of macOS Tags as if used correctly, they provide immediate access to both files and folders.
I’ve used three tags in my organisation of Sketch and client files:
The green tag is named ‘UI Library’. On a weekly basis I search finder for this tag if I need to make amendments or adjustments to our master UI Library.
The blue tag is named ‘Customer Design’. I chose not to mirror the folder name in order to make searching for this tag quicker. Also, as a team we have many results displayed ahead of the tag if ‘configuration’ is searched within finder.
Finally, the orange tag is named ‘Design Assets’. Within this folder resides all design assets that are useful such as stock photos, Sketch plugins, device templates etc.
I appreciate that these tags are only available on macOS and I’m unaware of the Windows equivalent, however, if something similar is provided on the platform you use, I recommend trialling this as I’m confident they will provide immediate results in reducing the speed and effort required when accessing files or folders.
These 5 techniques have enabled me to take control over what is a very complex organisation system of interconnected files.
With these techniques in place I’m able to locate files quickly and easily while myself and all team members require only the effort of a glance to understand specific client configurations. I have also dramatically reduced the potential for file and folder bloating and encouraged the maintenance and continuation of good organisational habits.
If you’re someone who works within a similar setup or has a multitude of Sketch files and design folders, I hope some of these tips will be helpful to you.
✏ Thank you ☺️