Why Most Websites Are Invisible To AI (And 3 Fixes That Actually Work)
→
Most websites are basically invisible to AI tools like ChatGPT and Perplexity. Here is how I make sites legible to machines using 3 simple fixes any business owner can copy.
My GEO Audit Checklist For Every New Client (With Real Fixes)
→
This is the GEO audit I run on every new client site. Schema, llms.txt, entities, FAQ structure, and the real fixes that actually move the needle.
CSS clip-path Animations I Actually Use For Scroll Reveals
→
How I use CSS clip-path for scroll reveals and hero transitions without ScrollMagic, GSAP, or a single animation library. Just CSS, a bit of IntersectionObserver, and some opinionated patterns.
CSS Logical Properties: How I Replaced Left/Right Without Breaking Everything
→
I migrated a real client project from left/right CSS to logical properties without breaking layout or deadlines. This is what actually worked.
Using CSS Custom Properties As Design Tokens (Without A Design System)
→
How I use plain CSS custom properties as a design token system for real projects. Spacing, color, and motion tokens. No Figma. No toolchain. Just code.
The Scroll-Driven CSS Animation I’m Most Proud Of (After 4 Rewrites)
→
I built a scroll-driven CSS animation that took four full rewrites before it stopped fighting me. This is the build log, including the ugly parts and the final clean setup.
From Zero To Indexed: How Long My Self‑Hosted Ghost Blog Took To Rank
→
I launched a self-hosted Ghost blog on a fresh domain and tracked everything. Here is the real timeline from “hello world” to first Google impressions and clicks.
CSS Container Queries In Production: Where They Shine And Where Media Queries Still Win
→
I refactored a real production project from media queries to container queries. This is what actually changed, what stayed the same, and where each approach still wins.
Building A Personal Metrics Dashboard With Vanilla JS And CSS Grid
→
How I built a fast personal metrics dashboard with vanilla JS, CSS Grid, and localStorage. No frameworks, no build tools, just browser-native tech that I actually use.
Stop Asking. Start Delegating: How I Actually Use AI On My Site
→
AI is not a smarter Google. It is a delegation tool. This is how I rebuilt parts of my site around that idea and shipped six AI gallery pages.
CSS :has() Selector: The Layout Trick I Wish I Knew 5 Years Ago
→
I ignored the CSS :has() selector for too long. Here is how it quietly removed a chunk of my JavaScript and made a few real production interfaces easier to ship.