Ask DN: Structuring large projects in Sketch

7 years ago from , Designer & Developer at Axonista

Anyone have any experience with structuring large projects in Sketch? For example, organising an app with a large UI component library, 100+ screens/states, and user flows.

Do you use one giant 'master' file with many pages? Or do you create separate, smaller files for each section or area of the app? If the latter, how do you make sure everything stays in sync? For example you update a component or text style and want that change to be reflected in multiple files across any screens/states and user flows it exists in.


  • Dragan BabicDragan Babic, 7 years ago

    I am a proponent of "a page per task"approach. Basically each page is a new "something", whether it's an iteration of a single screen, or a complete flow.

    This all varies across projects, though. So for instance on one project each direction I might take in a design process takes its own page — just so I can save it in case I need it later, and move on from a clean slate — and on another, each screen/page/template/component is designed within its own page while the steps/iterations are taken care of through artboards within those pages.

    2 points
    • Ian Goode, 7 years ago

      Sounds like a good approach, I would usually fall towards the latter.

      0 points
  • Justin Dickinson, 7 years ago

    If the benefits of keeping everything together are in any way about presentation you can use zeplin to help. That way you can split up (in the beginning, later, mid way through the project, whatever your heart desires) the Sketch files and just publish everything to the single zeplin project. If it's a really dense app with a lot of flows, using the tags in zeplin is very helpful.

    This worked for us at Vimeo with the mobile apps. That way different files can be used, you just have to keep track of naming and versioning.

    1 point
    • Ian Goode, 7 years ago

      Yeah we do use Zeplin although primarily as a reference resource for developers. Keeping track of naming and versioning is a good callout. Have been guilty in the past of jumping straight into something with eagerness and then having to go back to put structure on things later, always harder that way.

      0 points
  • Henry MoranHenry Moran, 7 years ago

    Being a freelance designer I've learned to work both ways. I personally like to have everything in one file separated by pages for each major screen.

    Now, that only works if you are the only designer on the team. Working with a larger team can lead to issues since you both want to work on the file and can lead to redundancy. In this case, I split each major screen into it's own Sketch document and only open the file I'm currently working on so that my other colleagues can work on other features.

    For me there isn't a perfect workflow since it will vary per project/team.

    1 point
    • Ian Goode, 7 years ago

      Yeah I prefer one 'master' file generally, although I'm usually the sole designer on a project so there aren't any workflow issues from that.

      When using multiple Sketch documents, how do you ensure they're all in sync? For example if you update a component or style that's used in multiple documents? Is it possible to have Sketch import these or is it a manual process?

      0 points
  • Mike RogersMike Rogers, 7 years ago

    Hey Ian,

    I actually just finished a fairly large project like the one you're talking about. What I found that worked well and kept everything together was using multiple pages like you described. I basically did individual flows on each "page". So, for instance I could have a dashboard screen and all of it's iterations one one page (labeled as Desktop - Dashboard), and then on a separate page I'd do the mobile version (Mobile - Dashboard). I then repeated that for all the other views.

    I could definitely see the performance change on pages that had more artboards, but it was drastically smaller than having everything in one view. It also made it a little more searchable and easier to export specific screens.

    1 point
    • Ian Goode, 7 years ago

      Yeah it sounds like more pages is the way to go. I always feel like it gets a bit 'cramped' in that pages/layers sidebar :)

      0 points