Broken SEO should
break your build.
Missing meta descriptions, broken og:images, duplicate H1s — caught in your terminal, not by your users.
import { defineSEO } from 'indxel'
// Type-safe. Zero config. CI/CD ready.
export default defineSEO({
site: 'https://yourapp.com',
ci: true
})
Init. Crawl. Guard. Done.
Init
Detects your framework. Scaffolds config, sitemap, robots.txt, and OG routes. One command.
$ npx indxel init
✓ Detected Next.js 15 (App Router)
✓ Generated seo.config.ts
✓ Generated sitemap.ts
✓ Generated robots.ts
✓ Created /api/og route
Crawl
Audits every page on your live site — meta tags, headings, og:images, JSON-LD, sitemap. Scores 0–100.
$ npx indxel crawl yoursite.com --push
Crawling 47 pages...
✗ /blog/new-post — Missing meta description
✗ /pricing — og:image returns 404
⚠ /features — Title too long (73 chars)
✓ 44/47 pages pass
Score: 91/100 (A)
✓ Pushed to dashboard
Guard
Add the check to your CI/CD. Build fails on broken SEO. No more silent regressions.
{
"buildCommand": "next build && npx indxel check --ci"
}
Features
Ship fast. Ship with guardrails.
Whether you hand-write code or vibe code — your SEO stays correct.
CI/CD SEO Guard
Your build fails if SEO breaks. Vercel and GitHub Actions out of the box.
$ npx indxel check --ci
✗ /blog/new — missing description
✗ /pricing — og:image 404
BUILD FAILED — 2 SEO errors
MCP Server
Ask Claude to audit any page. Works inside Cursor and Claude Desktop. Free.
> "Audit SEO for /pricing"
⚠ Title too long (73 chars, max 60)
✗ Missing og:image
✓ JSON-LD Organization found
Score: 72/100 (C)
Auto-Indexation
Submits to Google on deploy. Retries pages that don't get indexed.
Dashboard
One screen. Score, errors, deploys, indexation status. No bloat.
JSON-LD Auto
Generates JSON-LD from your data models. Article, Product, FAQ, Organization.
Type-Safe Config
defineSEO() with full TypeScript support. Autocomplete, validation, zero guesswork.
See what changed. Before it ships.
Every deploy diffed against the last. SEO regressions surface instantly — like git diff for your metadata.
SEO Diff (deploy abc123 → def456):
REGRESSIONS (3):
- /blog/new-post NEW missing meta description
- /pricing og:image 200 → 404
- /features added duplicate H1
IMPROVEMENTS (2):
+ /about added JSON-LD Organization
+ /blog/old-post fixed 2 missing alt texts
Score: 94 → 91 (-3)
Not another SEO dashboard.
Semrush is for marketers. Indxel is infrastructure for developers.
Open-core. Generous by default.
The npm package, CLI, and MCP server are free and open-source. Forever.
Free
$0
forever
- Full npm package
- CLI (init, check, diff)
- MCP server
- 1 site, 7 days history