TRAVIS INSKEEP

THC of Olympia — Website

Rebuilding a live retail site inside an isolation model strict enough to make mistakes impossible.

A ground-up replacement for a licensed retailer's production website, developed on a noindexed preview surface with no write path to production. The safety model is the engineering. Production DNS, the store page and the shared backend are protected surfaces, and any operation touching them needs explicit per-action approval rather than standing access. The Content Security Policy is narrow enough to be load-bearing: inline styles prohibited, scripts and fonts same-origin, form-action none, and the single inline script — inert structured data — admitted only by a build-derived SHA-256 hash. A validator recomputes that hash on every build and rejects a stale policy, so the protection cannot quietly rot into a comment while deploys keep succeeding. Analytics is consent-gated and host-pinned, so no request reaches Google before acceptance and neither localhost nor the preview can pollute production data.

Category: web

Tech: Cloudflare Pages, JavaScript, Content Security Policy, structured data, preview environments

Role: Developer

Live

The rebuilt THC of Olympia homepage on its preview, past the age gate: the headline "Your Olympia cannabis dispensary since 2011" over a street-map texture, Shop the menu and Find us buttons, an Open now panel with the week's hours, and the start of Today's deals with a tab for each day.