The slow part of most moodboard tools isn't the arranging — it's the collecting. Drag from a browser, upload from Finder, paste one at a time, before a single plate is placed. That step exists because most boards start from nothing. It's skippable entirely if the images already live in folders on the Mac, which for anyone who's been shooting, screenshotting or saving references for more than a few months, they almost always do. What follows is that shorter path: search what's already indexed, drag it onto a canvas, and stop there.
Step 1: Skip the import — the folders are already the source
There's no step where images move into the canvas tool's own storage. Registering a folder as a workspace indexes it in place; a canvas placed on top of that folder references files by path rather than copying them in, so nothing about "building a board" requires deciding what to upload first.
~/Pictures/Reference- Client shoots
- Location scouts
- Approved
- coii-thumbnailswritten by Coii Ref
- coii-proxieswritten by Coii Ref
- coii.dbwritten by Coii Ref
If the folder isn't indexed yet, that's the only prerequisite, and it's a one-time cost per root rather than something repeated for every board built afterward.
Step 2: Fill it from a search, not a scroll
Scrolling a folder of a few thousand files to find the forty worth boarding is the part a query line replaces. Narrow first, then drag from what's left rather than from everything.
The query doesn't have to be exact on the first try. A result set that's still too broad to drag from wholesale is a sign to add one more clause, not a reason to give up and scroll the folder instead.
Step 3: Drag straight from the grid onto the canvas
Once the search is narrow enough to look at directly, placing a plate is just dragging it from the results onto the board. There's no separate "add to board" dialog and no copy step in between — the file that was sitting in a folder a moment ago is now also a plate, still living in that same folder, unchanged.
This is also why boarding an untagged image costs nothing extra: dragging it on doesn't require it to have a tag, a rating or a folder location that means anything in particular. The board doesn't care where a file came from, only that it's on the canvas now.
Step 4: Arrange by space, not by folder
This is the part a folder genuinely can't do. Two images that never shared a folder, saved months apart from different shoots, can sit side by side on a canvas the moment there's a reason for them to — a shared palette, a shared angle, a client's note about wanting "more of this." Grouping by proximity on a board says something a filename or a tag never could: that these specific things belong together, for a reason that has nothing to do with when or where they were saved.
Clustering by loose zones — warm on the left, cool on the right, a smaller group pulled out and set apart — tends to read better at a glance than a tight grid, since the point of a board is comparing things quickly, not filing them precisely.
Distance carries meaning too, not just clustering. Two plates pushed right against each other read as a direct comparison — "these two, side by side" — in a way two plates on opposite corners of the same canvas don't, even though both are technically "on the board." Leaving deliberate gaps between clusters is worth doing on purpose rather than letting plates settle wherever they land, since a board that's visually even from edge to edge stops communicating which groupings actually matter.
Step 5: Tag in the moment, not before
Boarding an image is frequently the exact moment its tag becomes obvious —
it's on this board because it's a hero-shot, or because it's the
golden-hour reference the client asked for — and tagging right then costs
nothing extra, since the reason for pulling it forward is already in mind.
That's a different habit from tagging a folder exhaustively before ever
touching a canvas, and it's a better one: the tag arrives already meaning
something, instead of being invented in advance for a use nobody's found
yet.
Step 6: Save it as a file, not a session
Closing the board writes it to disk as .coii-canvas — plain, readable
JSON, in whichever folder was chosen when the board was created. That
matters more than it sounds like it should: it means the board is a file
like any other, so it backs up with the folder it sits in, moves when that
folder moves, and diffs in version control the way a text file does,
without an export step to remember or a login to lose access behind.
Step 7: Send it the way you'd send any file
A finished board travels the way any file travels — attached to an email, dropped on a shared drive, copied to a USB stick if that's still how a studio moves things. The one requirement on the other end is that the recipient also has the app to open it, since there's no hosted link and no flattened image exported automatically. For a board meant purely as a reference someone else opens once, that trade is usually fine; for one a whole team edits together live, it genuinely isn't — see the note on that limit further down.
Step 8: Narrow with a second search once the first is too wide
A board built from one broad query usually needs trimming, and trimming by eye is slower than narrowing the query that fed it. Rather than dragging fifty plates on and deleting thirty, add a second condition to the search first and see what's left.
This matters more the larger the underlying folder gets: a query that returns twenty rather than seventy saves real time at the dragging step, and it's almost always faster to add one more clause than to place plates and then decide which ones don't belong.
Step 9: Keep boards specific rather than building one that answers everything
A single canvas trying to hold "all the good references" tends to become unusable well before it becomes complete — too many plates to scan at a glance defeats the actual point of arranging by space in the first place. A board built for one client, one pitch or one specific question stays readable, and nothing stops a second or third board existing beside it for a different question, each pointing at the same underlying folders from a different search.
Where a board like this actually starts, before any of the above
Sometimes the honest starting point isn't a search at all — it's opening a mostly empty canvas and dragging in whatever's already sitting on the desktop from the last few days, then filling in gaps with a search afterward. Both directions work, and which one to start from usually depends on whether the images worth boarding are already known or still need finding. A board for "this week's client picks" tends to start from the desktop; a board for "everything warm and golden-hour from the last two years" only makes sense starting from a search, since nobody has that set open in a Finder window already.
A worked example: a client board from two years of shoots
Say a studio has two years of location scouting spread across a laptop and an external archive drive, both registered as their own workspaces, and a new client wants "the warm, golden-hour exteriors, nothing with people in frame." Nothing about that request needs new photography — it needs one query against what's already there.
From thirty-four candidates, the board itself might only need twelve — dragging is fast enough that overshooting the search and then trimming on the canvas is often quicker than perfecting the query first. The finished board saves next to the client's project folder, and reopening it six months later for a follow-up job still points at the same original files, wherever they ended up in the meantime.
Where a board like this genuinely falls short
Two honest limits worth knowing before building a habit around this. There's no floating, always-on-top mode for working next to another application while drawing — PureRef does exactly that and is free for personal use, so a board meant to hover over a canvas app while sketching is a job PureRef does and this doesn't. And there's no real-time collaboration — a board several people edit together live needs a tool built around that, not a file one person opens at a time. The wider round-up covers where each of those jobs is better served by something else.
What video adds to a board built this way
A board isn't limited to stills. A clip dragged onto a canvas sits at
proxy resolution rather than its full weight, so a board mixing footage
and photographs scrolls the way a board of only photographs does, without
the canvas bogging down under full-resolution video files. Search reaches
it the same way, too — type:video in the search step above returns
clips exactly as it returns stills, tagged and rated on the same pass, so
a board pulling "warm, golden-hour" references doesn't have to treat
footage as a separate category to search for and drag in separately.
Rebuilding a board after the folders underneath it change
Because a canvas references files by path rather than copying them in, moving the folder it points at — to a new drive, into a different client directory — breaks that reference unless the whole folder moves together with the images inside it. The fix is straightforward as long as it's understood going in: move the canvas file alongside the folder it draws from, not separately from it, and the board keeps opening the same way. A file renamed inside a registered folder is a different case entirely — the watcher catches that automatically, so a plate stays attached to its image through an ordinary Finder rename without the board needing to be rebuilt.
Common mistakes worth avoiding
Tagging a whole folder before ever opening a canvas — most of that tagging effort turns out to target images that never get boarded, where tagging in the moment a plate goes on the board only ever labels what actually got used. Treating the canvas as the place images live — it isn't; the folder is, and the canvas just references it, so deleting or moving the original file outside the app breaks the board's reference to it. And expecting a saved board to sync or share automatically — it's a file, and it moves exactly as far as whatever mechanism (a shared drive, a backup, an email) actually moves it.
What to do when the library gets large
None of the steps above change as the underlying folders grow into the tens of thousands of files; what changes is leaning harder on the search step rather than skipping to a scroll. A library that size is also where running several smaller, purpose-built boards tends to work better than one enormous canvas — a board for a pitch, a separate one for mood reference, a third for shot composition — since each stays fast to scan and easy to hand to one specific person for one specific reason, rather than a single board trying to answer every question at once.
The full query syntax is worth reading before boarding gets serious, since a good board is downstream of a good search — most of the time spent building a board badly is actually time spent searching badly, and it shows up as scrolling rather than dragging. Organising the folders underneath a board in the first place is the step before this one, if that hasn't happened yet. What a canvas is, argued in full and the moodboard-app case both go deeper into the same idea from a different angle. Or skip straight to it: thirty days, every feature, no card and no account is enough to build a real board from a real folder rather than a demo one.