[ Case study ]
Portfolio updates required the original freelancer, who had become a single point of failure: new projects waited months, the practice's strongest work was invisible, and the practice had no idea what their own CMS looked like.
CLIENT an architecture and interiors practice — FOCUS Model projects as records, not pages
Representative examplesEvery case study in this library is an illustrative composite of the kind of engagement we deliver — written to show our method and standards, not to name clients.
An architecture and interiors practice of a dozen people, with a portfolio spanning a decade of residential and cultural work. The projects photograph and draw well — this is a practice that wins work on the strength of its images. But publishing had passed through one freelancer for years, and the practice's own people had never seen the inside of their CMS. Completed buildings waited, sometimes for half a year, to exist online.
Portfolio updates required the original freelancer, who had become a single point of failure: new projects waited months, the practice's strongest work was invisible, and the practice had no idea what their own CMS looked like.
We proposed modeling projects as structured records — typology, location, size, photography sets — with templates rendering the page, so publishing becomes data entry an office administrator can do without touching layout. The media pipeline defines crop ratios per template and generates hero and grid variants, ending hand-exported imagery. Approvals move onto staging: partners review unpublished records together in their existing group sessions, and publishing follows the session rather than an email chain. The freelancer dependency ends; the practice owns the whole loop.
Just as important is what we ruled out, and why:
Each project became a structured record — typology, location, size, photography sets — and templates render the page, so publishing is data entry.
Photography gained a consistent pipeline: crop ratios defined per template, with hero and grid variants generated rather than hand-exported.
Partners review unpublished project records on staging links — the group approval session became part of the workflow instead of an email chain.
Delivered by the experience pod — designer + frontend engineer over 5 weeks, with working increments reviewed with the client every week.
Obstacle
The first project record exposed missing crop rules: the photographer's originals didn't fit the grid ratios, and the page couldn't ship without a reshoot decision.
Handled: We defined the ratios with the photographer in one working session, wrote them into the template specs, and the reshoot covered only the affected set.
Obstacle
Partner approval sessions kept reopening finished records — every session surfaced new image selections, and each selection reset the record's publish state.
Handled: We added a locked review pass where imagery freezes and comments only, so one session could finish a record without reopening the media picks.
Obstacle
Drawings arrived as print-ready PDFs that the imaging pipeline couldn't crop cleanly, and two nearly finished records stalled on them.
Handled: We gave drawings their own template with fixed aspect ratios and a file-size rule; the office administrator now exports them to spec without us.
The headline: published projects in the first two months after handover (was 3 in the prior year) — 3 → 14, read from CMS record count. A second check: publisher dependencies outside the practice at 0.
Publishing a project feels like filing a record, which was the whole requirement. The practice's strongest work from recent years is now visible to prospective clients, and partners reference their own site in first meetings instead of emailing PDFs. The office administrator owns the workflow end to end; the practice stopped being unable to answer can-we-see-more-of-your-work with anything but an apology.
The result was read from CMS record count against the pre-engagement baseline over the stated window, with a guardrail check on publisher dependencies outside the practice. Where platform-reported numbers and business outcomes differ, this record says which layer it is quoting.
What we would do differently
We would have defined the photography crop rules with the practice photographer at kickoff — the first project record needed a reshoot to fit the grid.
[ Related service ]
[ Related builds ]
9 installs 1 adminSites maintained from one WordPress admin, migration completed over 9 weeks
3.9s 1.8sMobile LCP on gallery pages, field data over the 28 days after launch
[ Next step ]
Next case study