Each exhibition is its own saved "instance" of a gallery — its own pieces, walls, and hangs. Use the dropdown at top to switch between them. + New exhibition starts a blank one; Load demo exhibitions restores the sample shows any time you want to see the app populated again.
In the sidebar, add pieces one at a time with a title, width, height, and a color as a stand-in for the artwork — or use Import CSV for a spreadsheet of title/width/height/color, or the Import Photos tab to point at a folder of images. Photos get an automatic thumbnail, and if a filename contains something like "1.2x0.9m", the dimensions are guessed for you.
Also in the sidebar, add a wall with its real-world width and height. Each wall gets its own tab above the canvas. Use Edit next to a wall to change its name or dimensions later without losing what's hung on it.
Every wall starts with one full-size zone, but you can add more under the canvas with + Add zone — a small rectangle (X/Y from the wall's top-left corner, width, height) that gets its own hang style. This lets one wall mix a grid cluster, a loose salon hang, and a single feature piece side by side or stacked. Zones may overlap or spill past the wall's edge (you'll get a warning banner), and dashed outlines mark their boundaries on the canvas — hide those with Show zone boundaries for a clean export.
Click a wall's tab, then a zone tab beneath the canvas, and use the "Pieces in this zone" checklist on the right to choose what hangs there. A piece already hung elsewhere shows greyed out with a "Move here" shortcut and the wall/zone it's currently in — a piece can only occupy one zone in the whole exhibition, just like the real artwork.
Flow mode keeps pieces at true size and wraps them row by row automatically (or force an exact "items per row"). Grid mode divides the zone into even rows and columns. Salon mode scatters pieces at random positions with no collision avoidance — genuine overlaps are expected — and a Shuffle button re-randomizes them. Horizontal and vertical spacing are separate controls, and you can set left/center/right/justify positioning too. A piece can also have a frame width and color — the frame grows outward around the artwork and counts toward its footprint in the layout.
Per wall, toggle a dashed eye-level line at a height you set and a wall color — these apply across the whole wall regardless of zones. Piece center lines and measurements (the real gap between pieces, between rows, and from a zone's own edges) are computed per zone.
Click one hung piece in the checklist, then another, to swap their positions in the layout — no dragging needed. In Salon mode this swaps their stored positions instead, handy for fixing an overlap you don't like.
Pick meters, centimeters, or inches per exhibition. Switching converts your existing numbers properly — including every zone's position and size — so nothing gets thrown off if you change your mind partway through.
Use Download as PNG under the canvas to save an image of a wall's layout, Export to SketchUp to generate a Ruby script that places every piece from every zone at its exact position on that wall, or Export CSV to save your piece list.