// Blog index — real posts, written in-house, about the actual product and // the actual problem it solves. No fake bylines, no fake stats, no // fabricated case studies — same rule as the rest of the site. const BLOG_POSTS = [ { slug: 'blog-why-we-built-fire-your-agency.html', tag: 'Product', title: 'Why We Built Fire Your Agency', excerpt: "The pitch for firing your agency isn't \"AI is cheaper.\" It's that your own WooCommerce data was always the better brief — no agency ever had it.", read: '5 min read', }, { slug: 'blog-outgrown-your-agency.html', tag: 'Strategy', title: '5 Signs Your WooCommerce Store Has Outgrown Its Marketing Agency', excerpt: 'Paying for hours instead of results, creative that takes days, attribution that\'s a guess — none of these are personal. They\'re structural.', read: '4 min read', }, { slug: 'blog-ai-ad-copy-explained.html', tag: 'How it works', title: 'How AI Ad Copy Actually Works Here (and Where Human Review Still Matters)', excerpt: 'Claude doesn\'t write into a void — it writes from your actual product data and your actual campaign history. Here\'s the real pipeline.', read: '6 min read', }, ]; const InfernoBlog = () => (
Blog

Blog

Notes on WooCommerce marketing, AI-generated creative, and what it's actually like to run campaigns without an agency in the loop.

{BLOG_POSTS.map(post => ( { e.currentTarget.style.transform = 'translate(-2px,-2px)'; e.currentTarget.style.boxShadow = '7px 7px 0 #E5421A'; }} onMouseLeave={e => { e.currentTarget.style.transform = 'none'; e.currentTarget.style.boxShadow = '5px 5px 0 #1A0D08'; }}>
{post.tag} {post.read}

{post.title}

{post.excerpt}

Read →
))}
); Object.assign(window, { InfernoBlog });