Skip to content
Carlsbad Web & AI
(858) 771-4439hello@carlsbadwebai.com

33.1581° N — 117.3506° W / Carlsbad, California

Work — all of it live, none of it staged

Work that is live, useful, and inspectable.

Every project below is open in a browser right now. Each case study names exactly what we did, what we decided, and what we deliberately did not do — so you can judge the work, not the writeup.

  • 4 live sites we built
  • transparent pricing
  • you own the code

Live work

The Gilded Fisherman homepage — navy and antique gilt editorial layout for a coastal boutique

Client work2026

The Gilded Fisherman

Coastal boutique - Shopify OS 2.0

An Old Florida boutique on Anna Maria Island: editorial navy-and-gilt layouts, four named departments, and a page for every one-of-a-kind piece — shipped as a custom Shopify theme the owner runs herself.

  • Shopify OS 2.0
  • Liquid
  • Custom Shopify theme
  • Inline SVG brand mark

Read the casegildedfisherman.com (opens in a new tab)

The Triple G Payments homepage — gold-on-black hero over the cannabis payment infrastructure headline

Client work2026

Triple G Payments

Cannabis-commerce payments - static Vite build

Payment infrastructure for licensed dispensaries, in gold-on-black: a rebate calculator whose inputs carry into the application, a clickable terminal demo, and a ten-row comparison against a typical current provider.

  • Vite
  • TypeScript
  • ES modules, no SPA framework
  • Vercel

Read the casetriplegpayments.com (opens in a new tab)

The EllaCash homepage after the rebuild — a rotating headline over the Remote ATM cash-access pitch

Client work2026

EllaCash ATM

Dispensary cash access - hand-built static site

A dispensary cash-access company lifted out of a dated Elementor page builder into a hand-built static site: the Remote ATM flow explained step by step, a two-step fit check, and a compliance section written to be read closely.

  • Hand-written static HTML
  • CSS
  • Vanilla JavaScript
  • GSAP + ScrollTrigger, self-hosted

Read the caseellacashatm.com (opens in a new tab)

The loyal.app homepage, with the CTV and mobile publishing headline over a self-hosted background video

Founder's in-house build2026

Loyal

Founder's in-house work, not a client engagement - Rails 8 + Hotwire

Built in-house as a Loyal employee, not as a Carlsbad Web & AI client engagement. A CTV and mobile publishing platform's full marketing site: two product pillars kept separate, a reach calculator a media buyer can push on, and a detail page for every app in the catalogue.

  • Ruby on Rails 8
  • Hotwire / Turbo Drive
  • Stimulus
  • importmap-rails

Read the caseloyal.app (opens in a new tab)

One of these is labelled differently on purpose: loyal.app is the founder’s in-house work as a Loyal employee, not a client engagement. It is shown because the build is real and inspectable — and labelled because the distinction matters.

Concept demos

These two were built unprompted, to show what the studio can do for a kind of business we would like to work with. Neither was commissioned, reviewed, or endorsed by the business named — the storylines in them are illustrative. They are demos of craft, not client results.

The Churchill's Pub & Grille concept demo homepage, with a vintage newsreel-style hero

Concept demo

Churchill's Pub & Grille

Concept demo - neighborhood pub

An unsolicited concept demo for a San Marcos pub: a 60-plus tap board with a detail view for every pour, an events calendar, a reservation flow that texts the owner with no backend, and an AI concierge.

  • Static HTML, CSS, and vanilla JavaScript
  • Self-hosted MP4 hero video
  • SMS handoff via device link
  • Next.js API route for the chat endpoint

Read the case

The OMBAC Rugby concept demo homepage — a dark, pro-club match-day layout

Concept demo2026

OMBAC Rugby

Concept demo - amateur sports club

An unsolicited concept demo for a San Diego rugby club: a dark match-day site with a Match Centre, full season fixtures, an honours and Eagles alumni wall, a club shop with a working bag, and a club assistant.

  • Static HTML, CSS, and vanilla JavaScript
  • Client-side cart state
  • Generated kit imagery
  • Vercel

Read the case

04 — How the work gets checked

The same standard, every build.

  1. 01

    Designed in the browser

    Layouts are decided against real content at real sizes, not in a mockup that falls apart when the actual words arrive.

  2. 02

    Real content early

    Your copy, your photos, your prices go in during the build, because a site approved with placeholder text has not really been approved.

  3. 03

    Checked before launch

    Keyboard navigation, contrast, and a throttled mobile profile are tested before a site ships — and we share the measurements from those runs rather than quoting a standing score.

  4. 04

    Inspectable after launch

    Everything we ship stays open in a browser. If a claim on this page cannot survive you opening the site, we should not be making it.

Want this standard applied to your site?

Send one URL and get five prioritized findings back — the same checks we run on our own launches, pointed at yours.

Get your free AI website audit