8 Tips for Organizing Project Files & Folders

File & folder structure can often be a very personal and idiosyncrasy-laden topic for designers. However, as you move from a one-file-fits-all model (such as using OmniGraffle or Microsoft Visio document for creating all your wireframes) to a more modular approach for creating user experience assets, you’ve got to have a plan for how you’ll store and relate your many documents.

While we at EightShapes still have our own personal folder structures that suit our personalities when we work alone, here are some tips of how to consider file & folder organization for your own practice and a baseline of topics to cover when collaborating with others.

#1. Keep Separate from Template Assets
At all costs, do NOT intermingle template assets (like those you download from EightShapes Unify) with your project files & folders. Instead, create a separate folder where you store your reusable starting points, and then a folder for each project. For example, my “projects” folder looks like:
/_EightShapes Unify/
/Project 1/
/Project 2/
/Project 3/

#2. Organize by File Type Hierarchy
When we’re creating wireframes, diagrams, and deliverables for a project, we’ll store our files in a way that mirrors the hierarchical relationship of the design system that those files mirror. That is, components are a part of pages are a part of pages collections (like flows or site maps or other diagrams) are a part of the overall experience (that some deliverable communicates). Therefore, my standard set of folders for a specific project look like:
/components/ (chunks of pages)
/deliverables/ (documents I’m creating to publish UX content)
/diagrams/ (concept models, navigation flows, maps, etc that need to be reused across 2+ deliverables or are of a different file type, like Illustrator)
/documentation/ (grabbag of other stuff, like materials from client)
/pages/ (page designs, whether INDD or PSD or FW)
/prototypes/ (for HTML or INDD-based clickable prototypes)

#3. Save Old Versions in an Archive
Don’t break links to your file just because it’s a new version. Instead, keep the most recent version of a file without a version number at all (such as /pages/cart.indd) and store older versions in an _archive folder (such as /pages/_archive/cart.v2.indd) if necessary. That way, links to /pages/cart.indd never break no matter what version of the file you are working on.

#4. Use Simple Subfolders
If you find that your folder of wireframe pages or wireframe components contains too many files, then create a set of subfolders with sensible, short names. Most often, if three or four EightShapes interaction designers are collaborating on a big project, we’ll subdivide the /pages/ folder to include subfolders like /checkout/, /product page/, /home/, /search results/, and other folders to collect a subset of page designs.

#5. Reveal Content via Filenames (ie, avoid “WireframeTry.Mark.Temp2.indd”)
This one should be simple but is so often seen and easy to fall into: you are working fast, creating files on the fly, and you cease thinking about a good file name because you’d rather just design design design. Have some empathy for those you collaborate with, as well as for yourself, in creating meaningful file names that succinctly describe the file’s contents.

#6. Consistently Classify Variations
If you are creating variations of the same component or page design, include a letter or number & variation description after the core filename. For example, for a third variation of a shopping cart page, name the file “Cart.C.WithPromoCode.indd.”

#7. Multi-page & Multi-layer Organization Constrains Reuse
While it may seem - even feel - right at the time, you should avoid using InDesign pages (which you can’t name and often get reordered) and layers (which, while you can name, will break as configured linked files the moment you change your layer composition such as name, quantity, or order). Even more importantly, it’s hard to understand and retrieve specific artwork in multi-page or multi-layer documents if you aren’t the person who created the file. Alright, let’s be honest, it’s nearly impossible to do so. Instead, for reusing component wireframes in page wireframes and both of those in deliverables, separate more “instances” of component and page designs into separate files with good file names.

#8. Use Subversion
While we’ve not (yet) used Adobe’s Version Cue for file sharing, we continue to have success collaborating on user experience files (mainly, InDesign deliverables and wireframes, but comps too) using subversion file management. Subversion enables us to maintain current and historical versions of files, particularly remotely instead of requiring some shared drive that requires network access. At EightShapes, we use beanstalkapp.com and haven’t had any complaints so far.

3 Comments

  1. How much storage are you using at Beanstalk?

  2. EightShapes uses the $15/month 3GB version for select, larger scale projects (that is, ones that warrant moderate to heavy collaboration), and have found that we have more than enough space.

  3. Mark Lamb says:

    Thanks for the tips Nathan - as always, they make a lot of sense!

    If anybody already hosts with Dreamhost, they offer Subversion for free with all their plans. Beanstalk app looks good though.

Leave a Reply

 
[]