How We Built a 160-Article AI Education Platform with Next.js and Static HTML
Three months ago, I launched IAcademy — an AI education platform in Spanish with 160+ free guides covering everything from prompting basics to autonomous agents, LLM deployment, and MCP servers.
Here's what worked, what didn't, and the architecture behind it.
Why Spanish AI Education is Underserved
The AI education space is dominated by English content. Coursera, Udemy, DeepLearning.AI — all English-first. Spanish-speaking professionals (500M+ people) get translated scraps or nothing.
The opportunity: 0% competition on keywords like "agentes ia" (400 monthly searches), "herramientas ia" (400), "formación ia" (250). In English, these keywords have 30-50% competition. In Spanish, nobody's writing quality content.
Architecture: Why Static HTML, Not a CMS
Each blog post is a standalone index.html file. No WordPress, no Gatsby, no MDX compilation step.
site/blog/
├── agentes-ia-que-son/
│ └── index.html
├── herramientas-ia-guia/
│ └── index.html
├── formacion-ia/
│ └── index.html
└── ... (160+ directories)
Why this approach:
- Zero build time. Adding an article = creating a directory + file. No compilation, no hydration errors, no framework upgrades breaking 160 pages.
-
Perfect SEO control. Every
<title>,<meta>, JSON-LD schema, internal link, and heading hierarchy is hand-crafted per page. No CMS template imposing its structure. - Instant deploy. Push to GitHub → Cloudflare Pages deploys in ~30 seconds. No build queue.
- No JavaScript required for content. Google indexes immediately. Core Web Vitals are perfect — there's nothing to load.
The dynamic parts (auth, course portal, labs) use Supabase + vanilla JS. But the blog — which is the SEO engine — is pure static HTML.
Content Strategy: Niche Prompts Beat Head Terms
After 3 months, here's what ranks and what doesn't:
What ranks (top 10 in Google):
-
prompts-ia-facturacion— prompts for accountants (position 8.4) -
prompts-ia-logistica— prompts for logistics (position 4.3) -
prompts-resumenes-ejecutivos— executive summary prompts (position 6.9) -
rol-en-prompts— role prompting guide (position 7.2)
What doesn't rank yet:
-
herramientas-ia-guia— "AI tools" head term -
agentes-ia-que-son— "AI agents" head term -
ia-para-marketing— competitive keyword
The pattern: profession-specific prompt templates rank faster than generic guides. Nobody else writes "20 prompts for invoice reconciliation in Spanish." Everyone writes "best AI tools 2026."
SEO Schema: What Actually Matters
Every article includes:
// Article schema
{"@type": "Article", "headline": "...", "author": {...}, "wordCount": 2800}
// FAQ schema (drives rich snippets)
{"@type": "FAQPage", "mainEntity": [{...}, {...}, {...}]}
// Breadcrumb schema
{"@type": "BreadcrumbList", "itemListElement": [...]}
The FAQ schema is the highest-ROI structured data. Google shows your FAQ answers directly in search results → higher CTR → more clicks from the same position.
Honest Numbers (3 Months)
| Metric | Value |
|---|---|
| Articles published | 160+ |
| Total clicks (3 months) | ~120 |
| Daily impressions | 0 → 200 (growing) |
| Pages in top 10 | 5 |
| Revenue | $0 (course just launched) |
| Domain Rating | ~0 (new domain) |
120 clicks in 3 months is painful. But the trajectory matters: impressions went from 0 to 200/day. The content exists, Google is indexing it, positions are slowly improving. The bottleneck is domain authority (zero backlinks) and domain age (Google sandbox).
What I'd Do Differently
Start with 20 niche articles, not 160. I over-invested in content before having any domain authority. 20 well-linked articles on a domain with 30 backlinks would rank faster than 160 articles on a domain with 0 backlinks.
Build backlinks from day one. Directory submissions, guest posts, GitHub profile links — these should start before the first article, not after the 160th.
Focus on profession-specific content. "Prompts for accountants" ranks. "AI tools guide" doesn't (yet). Double down on what works.
Stack
- Blog: Static HTML on Cloudflare Pages
- Auth + courses: Supabase (PostgreSQL + RLS)
- Analytics: PostHog (EU)
- Email: Brevo (transactional)
- SEO tracking: Google Search Console + Sistrix
Links
Building in public. Follow along on LinkedIn for weekly updates.
Top comments (1)
Impressive project. Building and maintaining a large AI content platform is as much about architecture as it is about writing.
One lesson we've learned while developing an AI-focused publication is that static generation, clean information architecture, image optimization, and internal linking have a huge impact on long-term performance and discoverability. Publishing at scale is sustainable only when the content workflow and technical foundation evolve together.
Thanks for sharing the technical insights behind your platform—it's always interesting to see how different teams approach large-scale publishing with Next.js.