Vibe Coding Part 5: How We Automated 25+ SEO Blog Posts with AI

The Blog Problem
Every e-commerce site needs a blog. Not because anyone reads it on day one — but because Google needs to find you somehow. A blog with 25 relevant posts generates more organic traffic than a homepage alone ever will.
The problem: writing 25 quality posts takes weeks. With AI, we did it in one session.
Here's the exact pipeline.
The Pipeline: Research → Write → SEO → Image → Publish
Every post goes through 5 stages:
Stage 1: Topic Research
We research what real customers in our target markets (Saudi Arabia, Qatar, Kuwait, Mexico, Brazil) are actually searching for. Not random topics — topics with search volume.
Examples of what we found:
- "best budget electronics students saudi 2026" — high search volume, low competition
- "kitchen gadgets ramadan prep" — seasonal, high intent
- "car accessories kuwait summer" — local, specific, actionable
Stage 2: Content Generation
The AI generates structured content with strict rules:
- H2 for main sections, H3 for subsections — never skip levels
- Internal links to actual products in our catalog
- No fake claims. "Trending in Saudi Arabia" means we verified it
- Power words only. "Oferta" not "descuento," "oportunidad" not "promoción"
- Real prices. If we mention a product, we use the real price from our database
Stage 3: SEO Metadata
Every post gets:
- Meta title — Under 60 characters, includes primary keyword
- Meta description — Under 160 characters, compelling and specific
- Canonical URL — Prevents duplicate content issues
- Tags — 8-12 relevant tags for internal categorization
- JSON-LD BlogPosting schema — Structured data for Google rich results
The JSON-LD is critical. It tells Google exactly what the post is about, when it was published, who wrote it, and what image to show in search results.
Stage 4: Hero Image Generation
Every post needs a hero image. We generate them with flux.1-dev on NVIDIA NIM — free, no cost.
The prompts are specific to each topic. For "kitchen gadgets ramadan prep," we prompt for: warm kitchen scene, golden hour lighting, organized cooking space, editorial photography style, 4k, no text, no people.
The "no people" rule is important. Stock photos with people look generic. Product-focused or scene-focused images look premium.
Stage 5: Seed and Verify
We use TypeScript seed scripts that call Prisma's upsert method. This means:
- First run: creates the post
- Subsequent runs: updates the post (no duplicates)
- Safe to run multiple times
After seeding, we verify each post is live with curl — checking HTTP status, og:image, and meta tags.
The SEO Checklist
Every post must pass this checklist before publishing:
- ✅ Meta title under 60 characters
- ✅ Meta description under 160 characters
- ✅ Canonical URL set
- ✅ JSON-LD BlogPosting present
- ✅ og:image set to real product/scene image (not logo)
- ✅ At least 2 internal links to products or other posts
- ✅ No fake prices or claims
- ✅ Power words used correctly
- ✅ Published date set
- ✅ Tags include primary keyword
Real Numbers
After one session of blog automation:
- 25 posts published
- 25 unique hero images generated (cost: $0.00)
- 100% SEO compliance — every post has meta tags, JSON-LD, canonical
- 468 source files in the codebase
- 4 languages supported across all content
Why This Works
Google rewards fresh, relevant, well-structured content. A blog with 25 posts covering real topics in real markets signals authority. The JSON-LD schema helps Google understand the content. The meta tags help with click-through rates. The hero images help with social sharing.
The AI didn't write "AI slop." It wrote structured, useful content that answers real questions real customers have. That's the difference between blog automation that works and blog automation that gets ignored.



