Track A — Web build
Bespoke Next.js + Sanity website for a UK ultrasound clinic
NELS Ultrasound is a UK private ultrasound clinic. We built their website end-to-end on Next.js 16, Sanity, and Vercel — a bespoke healthcare site designed to handle private patient bookings, communicate the clinical service offering clearly, and meet the trust and performance expectations of healthcare web users.The site sits in a quieter case study position than the Shopify ones — it’s not a multi-£m revenue story or a 7,000-variant catalogue. But it’s a clean illustration of what the engineering looks like when the brief is “build the digital surface this professional services business will run on for the next five years” rather than “automate this ecommerce workflow”.Different vertical, same engineering pattern: deeply embedded with the client team, custom-built rather than templated, owned by the client at the end.The brief
NELS came to us with a familiar mix of constraints for a private healthcare brand:- A clear clinical service offering that needed to be communicated without medical jargon and without crossing into anything that might be read as advertising regulated treatment outcomes
- Patient enquiry and booking flow that needed to feel reassuring and professional (private patients pay out of pocket — the website is part of the trust-building)
- A team that could update content without breaking anything (no in-house developer)
- Performance and accessibility taken seriously from the start, not bolted on later
- Hosting and ongoing maintenance handled by the consultancy so the clinic doesn’t need a tech team
Why Next.js and Sanity for a clinic website
Three reasons this stack fit the brief specifically.Performance and Core Web Vitals from day one
Healthcare websites have higher trust requirements than most commercial sites. A page that loads slowly, jumps around as it loads, or feels janky on mobile undermines the trust signal that makes patients pick up the phone or fill in the booking form. Next.js with proper image optimisation, server components, and Vercel’s edge network gives a performance baseline that’s hard to match on builders or generic CMSes.A content model the clinic team can own
Sanity’s Studio interface is genuinely usable for non-developers. We modelled the content schema around the clinic’s actual editorial needs — services, FAQs, clinician profiles, articles, locations — with validation rules that prevent common mistakes (broken links, missing alt text, untyped fields). The clinic team can add a new service page, update a clinician’s profile, or publish an article without touching code or risking the site.Hosting that just works
Vercel handles deployment, scaling, edge caching, and most of the infrastructure work that would otherwise need ongoing attention. The clinic doesn’t need to think about hosting. Updates push automatically. The cost is predictable.What we built
The public site
Marketing pages covering the clinic’s services, locations, clinician profiles, FAQs, and patient information. Every page generated from Sanity content with strict templates so the editorial team can publish freely without breaking layout or accessibility.The pages render server-side for SEO and performance, with selective client-side interactivity (the booking widget, FAQ accordions, gallery lightboxes). Image-heavy content (clinic photography, scan examples used with permission) is optimised through Vercel’s image pipeline.The booking flow
Private patient enquiry and booking is the single most important conversion path on a clinic site. We built a custom flow that handles service selection, location selection, time slot preferences, and patient information capture, with structured handoff to the clinic team for follow-up.The flow is deliberately not a fully self-service booking system — for healthcare, a human touchpoint between enquiry and confirmed booking is appropriate (patient details to verify, suitability questions, sometimes a clinical pre-screen). The flow captures everything the clinic needs to follow up confidently in their existing process, without forcing the clinic to adopt new booking software.Content architecture in Sanity
The Sanity schema was designed alongside the clinic team to match how they actually think about content:- Services as a top-level type with structured fields (description, indications, what to expect, pricing where appropriate)
- Locations with their own pages, opening hours, contact details, embedded maps
- Clinicians with profiles, qualifications, and which services they perform
- Patient information articles for the editorial side
- Reusable FAQ blocks that can be attached to any service or location
Compliance and trust signals
Healthcare sites have specific trust expectations: clear identification of the regulated entity, transparent contact details, qualifications visibility, privacy and data handling. The site handles all of these through structured Sanity content, with the layout components designed around healthcare-typical trust elements (clinician credentials prominent, regulatory body references where applicable, clear contact and complaint pathways).Cookie consent, privacy policy, and accessibility are handled to UK GDPR and WCAG 2.1 AA expectations. None of this is dramatic engineering — it’s just done properly, which is what most healthcare sites of this size don’t do.Tech stack
For prospects evaluating fit:- Frontend: Next.js 16 (App Router), React 19, TypeScript end-to-end, Tailwind CSS
- CMS: Sanity for structured content with custom Studio configuration
- Hosting: Vercel for the application, Sanity Content Lake for structured data
- Forms / booking: custom server-side handling with email + structured CRM-ready output
- Analytics: Vercel Analytics + privacy-respecting site analytics
- Auth: Sanity Studio uses standard SSO; no public-facing auth on this site
Status and what’s next
The site is built and currently in its final review phase with the clinic team before public launch. Once launched, we’ll layer in:- Local SEO work for the locations the clinic operates from (Track B services applied here)
- Structured data for medical organisation, clinician profiles, and service offerings — all schema types Google supports for healthcare entities
- Ongoing content support as the clinic adds services and locations