Most of you probably already know, Sketch 43 and it will bring something amazing to the industry: an open file format! For those who are not yet aware, here a nice read on it: Sketch 43 is coming
Now... I was recently reading this article how the Dropbox Paper team manage to automate some of their Icon management
If you haven't yet read it I highly suggest doing so.
Long story short: they came quite far to something I would consider an ideal workflow form icon management already with the current Sketch file.
And then I started thinking... "hm.. with Sketch 43 this can be really interesting..."
So here I am. I would like to share with you what I would call my (and our company) ideal scenario and would like to hear from you your ideas!
We have a central git repo for all our icons which consist from single Sketch files. One file for one icon.
We have a icon_template.sketch that includes three basic art-board: Icon, Infos and Preview
-- The Icon art-board includes only the icon (as a symbol)
-- The Info art-board has some basic information info blocks: name, description, keywords etc.
-- The preview art-board shows the icon in different use cases. Of course we use the symbol here, so we immediately see all the changes when iterating on a icon.
When designer wants to create a new icon, he takes the template, makes icon and commits/pushes to GIT (we would probably have a D,Q and P branch). Same goes for editing existing icon.
Now the magic happens:
-- A script on our server takes the committed content, extracts the new (or updated) .sketch file, generates the .svg, generates the .png (if needed),
-- updates the sprite, css (less, sass, whatever),
-- updates the icons HTML overview page (with the name, description, keywords) so people can quickly look what exists
-- maybe even creates a big .sketch file with all the icons as symbols...
-- since our website uses the central .css and sprite ... the icons are automatically updated on the website
Ok... we will most probably have to have guidelines how a icon has to be done and some governance process but the idea is simple: from the point the Designer pushes his new/changed .sketch file... everything happens automatically and is in perfect sync + because of GIT we have the version history.
What do you think?