Case study No. 014 · Recording studio · Harrisburg, PA · Client project

Pro Sound Studio

The old site asked you to trust a studio while publishing a fictional street address and a 555 phone number. This one publishes only what can be proved — and prices every single thing it sells.

Client
Pro Sound Recording Studios
Year
2026
Status
Deployed · awaiting client sign-off
Role
Rebuild, pricing architecture, backend
Pages
39 routes
Stack
React, Vite, Supabase, Vercel
Accessibility
WCAG 2.1 AA · 0 violations

What was actually wrong

Before
A live site publishing 123 Studio Way and a 555 phone number, testimonials and streaming figures with no source, four room tiers with no stated difference, and a fourth tier advertised that nobody could buy. Every page failed WCAG AA contrast. Booking was an embedded widget on someone else’s domain.
After
Every published fact traced to a source or removed. 152 products priced, each with a plain-English reason for the price. The site is the booking desk. Zero accessibility violations across all 39 routes in Chromium and WebKit.

What I shipped

01

An evidence rule

Every claim classified: verified, client-confirmation-required, or removed. The fake address, the unsourced testimonials, the 5,000-tracks figure and the celebrity credits all came out. The real phone number was recovered from the live booking system and corroborated against three directories.

02

Accessibility, measured not asserted

axe-core across all 39 routes found 353 failing elements in 19 colour combinations — every page failed. Fixed by splitting one overloaded red token into a background red and a text red, and consolidating seven ad-hoc greys into one accessible token. Now zero violations in two engines.

03

A pricing architecture

Mined 135 rows from the live booking system and found Spark/Pro/Elite were pure multipliers with no stated difference — customers were asked for 124% more with no reason given. Surfaced the tier definitions, then priced the five service lines that had no price anywhere.

04

The site as the desk

A Supabase backend holds the catalogue, tier definitions and orders. Row-level security is deny-by-default on anything holding a name, email or phone. Quotes snapshot their prices, so a later catalogue edit can never change a number already given to a customer.

05

Memberships that show their working

Five monthly plans, each priced below the à-la-carte value of what it contains, with the saving printed next to the price so the customer can check the maths.

06

Infrastructure parity

29 legacy URLs redirect 308 with query strings intact, and the payment permission is delegated only to the verified booking origin — generated from one source of truth with a test that fails if the two ever drift.

Pro Sound Studio homepage
The rebuilt homepage. Dark editorial system, room-led navigation.
R.E.D. Studio room page
Room pages carry the published equipment list, attributed to the studio rather than claimed as verified.

The result

353→0
Accessibility violations
152
Products priced
97
Lighthouse performance
1.3s
Largest contentful paint

◉ Proof: every number here was measured, not estimated — axe-core and Lighthouse against the deployed build, and all 29 redirects checked live. The site is deployed and public; the client’s domain has not been pointed at it yet, because contact details, policies and photography still need owner sign-off. That gate is deliberate and documented, not an oversight.

Deliverables & build

39 routes152 priced productsSupabase backendWCAG 2.1 AA29 legacy redirects26 automated tests

Why it matters

The interesting work here was not design. It was deciding what a business is allowed to say about itself. A studio taking card payments was publishing a fictional address, borrowed credibility and prices nobody could explain — and the fix for each was the same: find the source, or do not print it.

What is left is not code. It is six questions only the owner can answer — refund terms, file retention, photography rights. They are written up and waiting, because shipping a guess on any of them would have put a real business at risk.

Visit the live site Get in touch More work