Skip to content
DEV AIO SOFT LLC
All work
Shipped · live in productionCase studyStarted

Auto glass repair and replacement

State Auto Glass

A site that answers the questions the phone used to

Visit stateautoglassinc.comWebsite byDEV AIO SOFT LLC

The problem

A sixty-year-old local business needed to be found by the people already looking for it, across a dozen towns — and to turn that traffic into quote requests. Word of mouth built the business; the web needed to carry it forward.

The result

A fast, static site the owner runs himself: quote form, interactive coverage map, service index, field report, and a dedicated page for each town served.

What was built

  • A content system built for this site, so the owner edits every page, price and photo himself
  • Individual pages for each service, so each one can be found on its own terms
  • A dedicated page for each of the twelve towns served, not one page listing them
  • An interactive service-area map covering 12 towns across 6 counties
  • An insurance claims section, and a straight answer on what a replacement costs
  • A vehicles page covering cars, trucks, RVs, classics and equipment
  • A quote request form that reaches the business directly
  • A reviews section and existing trust accreditations, integrated rather than bolted on
  • An FAQ answering what customers actually ring up to ask
  • A blog of field notes, and a field report section with job records and status tracking
  • A homepage film cut from the owner's own phone and drone footage

The situation

An established auto glass business with a real service area, a real reputation and no way for either to be found online. Customers who wanted a quote had to ring during business hours, and the same questions were being answered by phone several times a day.

What we built

Rather than one page describing everything, each service got its own — because somebody searching for a windscreen replacement and somebody searching for a chip repair are not the same visitor and should not land on the same paragraph.

The coverage map is the piece that does the most work. Auto glass is a local purchase, and the first question is always the same: do you come to me? Twelve towns across six counties, on a map you can actually use on a phone at the roadside, answers that before anyone has to ask it.

The field report section was the part we did not expect to matter as much as it does. Job records with status tracking turn a claim about being busy and reliable into something a visitor can see for themselves.

Why it reads as credible

Nothing on it is invented. The reviews are real reviews, the accreditations are the business's own, the field reports are actual jobs, and the homepage film is the owner's own footage rather than stock. The site's job was to make a genuinely established business look as established online as it already was in person — which is a different problem from making a new business look big.

After launch

The site was the first half. The second was working out why the phone was not busier, which is a different kind of work from building: the service area town by town, who ranks in each of them, and a long conversation with the owner about how work actually arrives and where the quiet weeks come from.

What came out of it was a page for each town he covers, with its own content and its own reason to be found by somebody in that town — rather than one page that lists them. Nothing about how search engines work changed. What changed is that there is finally something real to find in each of those places.

We are not going to put a number on this page. No figure has been measured yet, and an invented one would undo the only thing this page is for.

The content system

Built from scratch.

A content system written for this site — not Sanity, not Contentful, not WordPress. The owner, who is not technical, manages the entire site from one admin panel: every page, nav link, sitemap entry and piece of structured data, with no code touched.

Live split-screen mirror

He adds a town, swaps a photo or rewrites a line himself, the day he decides to.

The editor is two panes: the content form on the left, and a real-time visual mirror of the live site on the right, sticky, scrolling with you. Every field on the left has a matching block on the right.

  • Pick an item or focus a field and the mirror scrolls to the exact block being edited and rings it, so there is never a guessing game about what a field controls.
  • Section-aware: editing hours shows the hours block, editing one FAQ scrolls straight to that FAQ, and a homepage section appears in the owner's actual saved order.
  • Handles partial and empty content gracefully. Nothing crashes mid-edit, and a blank field shows a muted placeholder instead of breaking the layout.
  • Covers every content type: business info, homepage sections, services, FAQs, reviews, service areas, blog posts and job records.

Friendly by design

The test is not whether a developer can use it. It is whether somebody who fits glass for a living will still be using it in a year.

  • Guided in-app documentation, so nothing external is needed to learn it.
  • Purpose-built field components rather than raw JSON editing.
  • A drag-and-drop photo pool: a grouped media library with multi-select, and uploads that keep their original filenames.
  • Full revision history. Every save is tracked and reversible.
  • Unmissable upload progress, and no silent failures.

Safety and reliability

An owner editing his own live site needs the system to refuse to let him break it.

  • Schema-validated with Zod end to end, backed by Postgres with a committed JSON fallback — the system works even with zero environment variables configured.
  • Auth-gated with Clerk and failing closed in production, checked at the middleware layer and again in every API handler.
  • Guardrails against editing the production database from a local development environment by accident.
  • On-demand cache revalidation, so a save goes live instantly with no rebuild and no redeploy.

The reason to build this rather than hand over a login to something generic is what happens in year two. A site the owner cannot edit becomes a site that slowly stops being true.

Built with

  • Next.js
  • React
  • TypeScript
  • Tailwind CSS
  • Neon Postgres
  • Zod
  • Clerk
  • Cloudinary
  • Vercel
Core
Next.js 16 — App Router, React Server ComponentsReact 19 · TypeScript 5, strictTailwind CSS v4 — CSS-first design tokens
Backend and data
Neon Postgres — the content storeZod — schema validation throughoutClerk — authentication for the admin panel
Media
Cloudinary — signed direct uploads, image and video transforms, folder-based organisation
Lead delivery
A form service first, branded email second, then a server log as the last fallback — so an enquiry is never silently lost
Search
Next.js Metadata API, JSON-LD (LocalBusiness, Service, FAQPage, BreadcrumbList, BlogPosting), dynamic sitemap, robots and manifest
Motion
Pure CSS animation driven by IntersectionObserver — no animation library, and reduced-motion aware
Deployment
Vercel — incremental static regeneration, plus on-demand revalidation the moment the owner saves

See it for yourself

State Auto Glass, built byDEV AIO SOFT LLC

Visit stateautoglassinc.com

Something like this?

Tell us what you’re trying to do and we’ll come back with a straight answer about what it would take.