TRJ Services Electrician Website
TRJ Services LLC · Trades / Local Business
The Challenge
TRJ Services LLC is a one-person electrical contracting business run by David Barck, a journeyman electrician serving Kitsap and Pierce County, Washington. Like most independent tradesmen, David had no web presence — prospective customers found him through word of mouth or not at all. He needed a site that did three things at once: look like the work of a serious craftsman, show up in local search, and make it effortless to get in touch from a phone in a parking lot.
The site had to:
- Establish credibility immediately — visitors should feel within seconds that this is a real, licensed electrician
- Cover every service he offers without burying details behind generic copy
- Rank for local searches across both counties he serves
- Send inquiries straight to his inbox, with zero hosting overhead and no monthly SaaS bills
- Be easy to update as services, photos, or phone numbers change
Our Approach
We treated the site as a small editorial product rather than a template fill-in. The aesthetic — internally we called it “Editorial Tradesman” — pairs warm cream paper tones, deep navy ink, and a single amber accent thread, with a Fraunces display serif for headlines and DM Sans for body. The result feels like a craftsman’s calling card, not a generic contractor template.
Key decisions:
- Astro + Tailwind 4 for a fully static build — every page is plain HTML on a CDN, with no runtime server to maintain or patch
- A single source of truth for content — phone numbers, the service area, and the city list live in one TypeScript file and propagate to the header, footer, sitemap, and JSON-LD schema automatically
- Structured data everywhere it matters — LocalBusiness JSON-LD on the home page, per-service Service JSON-LD on the Services page, and a clean sitemap so Google can index without guesswork
- A real contact form, not a mailto link — submissions POST to an AWS Lambda, which validates fields, drops honeypot bots, and sends a formatted email through SES with the visitor’s address as
Reply-To - Graceful degradation — in local development with no Lambda URL configured, the form falls back to a friendly “please call us” message instead of producing broken behavior
We also designed three distinct logo directions and parked them on an unlisted internal route so David could see real options on his phone before committing.
Technical Details
The stack was chosen for speed, longevity, and a near-zero monthly bill:
- Frontend: Astro 5, Tailwind 4, TypeScript — static HTML and CSS, no JavaScript framework runtime
- Hosting: Amazon S3 behind CloudFront, with ACM-issued HTTPS and Route 53 DNS
- Contact form: AWS Lambda (Node.js) fronted by a Function URL, delivering through Amazon SES
- Infrastructure as code: Terraform manages S3, CloudFront, ACM, Route 53, SES, the Lambda, and the GitHub OIDC role —
terraform applybrings the whole stack up from nothing - CI/CD: GitHub Actions deploys on every push to
mainvia short-lived OIDC credentials (no long-lived AWS keys in the repo), runningnpm run build, syncing to S3, and invalidating CloudFront - SEO: LocalBusiness + per-Service schema, sitemap, robots.txt, Open Graph tags, and county-level landing content for both Kitsap and Pierce
- Accessibility: Semantic HTML, keyboard-navigable, sufficient color contrast in the cream/navy palette, and tap-target sizing tuned for one-handed mobile use
The entire site renders as static files at the edge — fast everywhere, with no servers, no databases, and no patch cycle.
Results
The site delivers a polished, professional presence for an independent contractor at a hosting cost measured in single-digit dollars per month:
- Sub-1.5-second load times on mobile connections, with the entire site served from CloudFront’s global edge
- Local SEO foundations in place from day one — structured data, sitemap, and city-specific content for every town in his service area
- Inquiries delivered directly to David’s inbox, with spam filtered out before it ever reaches him
- A fully reproducible deployment — every piece of infrastructure is in Terraform, every release is a single
git push - Editable in plain text — David’s wife Tawna can update the phone number, swap a photo, or add a city by editing a single file, with no CMS to log into
Beyond the launch, the project gave David something he’d never had before: a credible online answer to “do you have a website?” — one that matches the quality of the work he’s been doing on job sites for years.
Visit the live site at trjservices.net.
