SDK

SDK Reference

TypeScript SDK for defining metadata, generating JSON-LD, validating SEO, crawling sites, and researching keywords.

Installation

Installbash
npm install indxel

Zero runtime dependencies. Ships ESM + CJS + TypeScript declarations. Optional peer dependency: next >= 14.

Minimum requirements

Node.js 18+. TypeScript 5+ recommended.

Functions

Quick Example

seo.config.tstypescript
import { defineSEO } from 'indxel'

export default defineSEO({
  siteName: 'My SaaS',
  siteUrl: 'https://mysaas.com',
  titleTemplate: '%s | My SaaS',
  defaultDescription: 'Build faster with My SaaS.',
  defaultOGImage: '/og-default.png',
  locale: 'en_US',
  twitter: { handle: '@mysaas', cardType: 'summary_large_image' },
})
app/pricing/page.tsxtypescript
import { createMetadata, generateLD } from 'indxel'
import seoConfig from '@/seo.config'

export function generateMetadata() {
  return createMetadata({
    title: 'Pricing',
    description: 'Simple pricing. Start free.',
    path: '/pricing',
  }, seoConfig)
}

// JSON-LD
const faq = generateLD('FAQ', {
  questions: [
    { question: 'Is there a free plan?', answer: 'Yes, forever.' },
  ],
})

TypeScript Types

Exported typestypescript
import type {
  SEOConfig,          // Global site SEO configuration
  PageSEO,            // Per-page SEO options
  MetadataOutput,     // Next.js-compatible metadata object
  StructuredDataType, // 'Article' | 'FAQ' | 'HowTo' | ...
  ValidationResult,   // Score, grade, errors, warnings, passed rules
  CrawlOptions,       // maxPages, maxDepth, delay, strict, ignorePatterns
  CrawlResult,        // pages, averageScore, grade, analysis
  KeywordResearchResult,  // suggestions, questions, longTail
  ContentGapResult,       // covered, gaps, coveragePercent
} from 'indxel'