@drowlink/aeo-linter-core
v0.3.0
Published
Core engine and audit pipeline for SEO, GEO and AEO linter (Lighthouse architecture)
Maintainers
Readme
@drowlink/aeo-linter-core
The agnostic core engine and audit pipeline for Technical SEO, Answer Engine Optimization (AEO), and Generative Engine Optimization (GEO), built on the Google Lighthouse architecture.
[!NOTE] 🧩 Chrome Extension Status: The companion Chrome Extension is currently In Review on the Chrome Web Store.
Part of the aeo-audit-linter project.
📦 Installation
npm install @drowlink/aeo-linter-core🚀 Quick Usage
import {
Runner,
HtmlReporter,
TerminalReporter,
defaultConfig
} from '@drowlink/aeo-linter-core';
async function main() {
// Run the 3-phase audit pipeline (Gather -> Audit -> Aggregate)
const report = await Runner.run('https://example.com', {
config: defaultConfig,
onProgress: (phase, msg) => console.log(`[${phase.toUpperCase()}] ${msg}`)
});
console.log(`Overall Score: ${report.overallScore} / 100`);
// Generate formatted Terminal report with ANSI colors
console.log(TerminalReporter.generate(report));
// Generate self-contained interactive HTML dashboard with SERP preview
const html = HtmlReporter.generate(report);
}
main();🏛️ Architecture (Lighthouse Pattern)
- Gatherers (
core/gather): Extract raw typed artifacts (MetaTags,Images,Links,Keywords,RobotsTxt,HttpHeaders,JSONLD,HeadingsHierarchy,ContentChunks,DirectAnswers,LlmsTxt). - Audits (
core/audits): 25 pure deterministic audit functions that evaluate artifacts and return typed{ score, displayValue, details }. - Aggregator (
core/runner/aggregator): Calculates weighted category scores and global score (0–100). - Quality Gates (
core/runner/assertions):evaluateQualityGatesfunction for CI/CD threshold validation. - Reporters (
core/report): Terminal and interactive SVG gauge HTML dashboards with SERP preview and keyword density.
🎯 Categories & Audits (25 Audits Across 5 Categories)
seo-fundamentals(20%): Title tag (seo-title), meta description (seo-meta-description), canonical URL (seo-canonical), indexability (seo-indexability), image alt tags (seo-image-alt), crawlable links (seo-crawlable-links), Open Graph (seo-open-graph), mobile viewport (seo-viewport-mobile), and HTTPS (seo-https).ai-accessibility(20%): AI crawlers (ai-robots-txt), headers (ai-x-robots-tag),/llms.txtstandard (ai-llms-txt), and Sitemaps (ai-bot-sitemap).structured-data(20%): RAG schemas (rag-schema-presence), JSON-LD syntax (jsonld-syntax-validity), Author E-E-A-T (author-eeat-presence), and Knowledge Graph (entity-sameas-links).content-chunking(20%): Headings (heading-hierarchy), HTML5 tags (semantic-containers), RAG token density (chunk-token-density), and tables/lists (table-list-scannability).direct-answer-density(20%): Definitions (direct-definition-answering), 30-60w conciseness (concise-answer-wordcount), facts & citations (fact-citation-density), and query headings (question-heading-alignment).
📄 License
MIT © DrowLink
