@lynxflow/seo-engine 1.6.0 → 1.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -4434,13 +4434,14 @@ import { matrixEngine, SEO_CONFIG, PSEO_DATASET } from "@/lib/seo";
4434
4434
 
4435
4435
  export default function sitemap(): MetadataRoute.Sitemap {
4436
4436
  const domain = process.env.NEXT_PUBLIC_SITE_URL || "https://example.com";
4437
- const pages = matrixEngine.generateAllMatrices(domain, PSEO_DATASET, SEO_CONFIG);
4438
- return pages.filter((p) => p.robots.includes("index")).map((p) => ({
4439
- url: p.canonicalUrl,
4440
- lastModified: new Date(),
4441
- changeFrequency: "weekly",
4442
- priority: 0.8,
4443
- }));
4437
+ return matrixEngine.generateAllMatrices(domain, PSEO_DATASET, SEO_CONFIG)
4438
+ .filter((p) => p.robots.includes("index"))
4439
+ .map((p) => ({
4440
+ url: p.canonicalUrl,
4441
+ lastModified: new Date(),
4442
+ changeFrequency: "weekly",
4443
+ priority: 0.8,
4444
+ }));
4444
4445
  }
4445
4446
  \`\`\`
4446
4447
 
@@ -4451,49 +4452,67 @@ import { matrixEngine, SEO_CONFIG, PSEO_DATASET } from "@/lib/seo";
4451
4452
 
4452
4453
  export async function GET() {
4453
4454
  const domain = process.env.NEXT_PUBLIC_SITE_URL || "https://example.com";
4454
- const pages = matrixEngine.generateAllMatrices(domain, PSEO_DATASET, SEO_CONFIG);
4455
- const markdown = [
4456
- \`# \${SEO_CONFIG.brandName} Solutions Index\`,
4457
- \`> Structured knowledge feed for LLMs and AI search engines (ChatGPT, Perplexity).\`,
4458
- \`\`,
4459
- \`## Solutions & Matrices\`,
4460
- ...pages.map((p) => \`- [\${p.h1}](\${p.canonicalUrl}): \${p.description}\`),
4461
- ].join("\\n");
4455
+ // 1-Line high-density Markdown feed for ChatGPT Search & Perplexity
4456
+ const markdown = matrixEngine.generateLlmsTxt(domain, PSEO_DATASET, SEO_CONFIG);
4462
4457
  return new NextResponse(markdown, { headers: { "Content-Type": "text/plain; charset=utf-8" } });
4463
4458
  }
4464
4459
  \`\`\`
4465
4460
 
4461
+ #### File 5: Dynamic AI Search & Bot Rules (\`app/robots.ts\` or \`public/robots.txt\`)
4462
+ \`\`\`typescript
4463
+ import { MetadataRoute } from "next";
4464
+ import { matrixEngine } from "@/lib/seo";
4465
+
4466
+ export default function robots(): MetadataRoute.Robots {
4467
+ const domain = process.env.NEXT_PUBLIC_SITE_URL || "https://example.com";
4468
+ return {
4469
+ rules: [
4470
+ { userAgent: "*", allow: "/", disallow: ["/api/", "/admin/"] },
4471
+ { userAgent: ["GPTBot", "ClaudeBot", "PerplexityBot", "Applebot"], allow: "/" },
4472
+ ],
4473
+ sitemap: \`\${domain}/sitemap.xml\`,
4474
+ };
4475
+ }
4476
+ \`\`\`
4477
+
4466
4478
  ---
4467
4479
 
4468
- ### \uD83C\uDFDB️ 5. MATRIX ARCHITECTURE: 10 ROOT PILLARS & 50+ SPECIALIZED SUB-MATRICES
4480
+ ### \uD83E\uDDF0 6. THE COMPLETE LYNXSEO STUDIO ENGINE & TOOL SUITE
4469
4481
 
4470
- 1. **10 Canonical Root Pillars:**
4471
- - Comparisons: \`/vs/{competitor}\`
4472
- - Alternatives: \`/alternatives/{competitor}\` (Zero keyword stuttering)
4473
- - Pricing: \`/pricing/{competitor}\`
4474
- - Audiences: \`/for/{target}\` (Unified industry/role mapping, anti-cannibalization)
4475
- - Integrations: \`/integrations/{app}\` (Clean slug without stop words)
4476
- - Use Cases: \`/use-cases/{useCase}\` (Actionable workflows with HowTo JSON-LD)
4477
- - Templates: \`/templates/{slug}\` (High-converting spreadsheet/notion lead magnets)
4478
- - Glossary: \`/glossary/{term}\` (Topic authority cluster hub)
4479
- - Tools: \`/tools/{calculator}\` (Interactive ROI & value estimators)
4480
- - Local Geo: \`/solutions/{service}/{country}/{city}\` (Tiered Indexing & Mesh Links)
4482
+ The SDK equips applications with 9 enterprise-grade SEO engines:
4481
4483
 
4482
- 2. **50+ Specialized Sub-Matrix Dimensions:**
4483
- - **Industry & Regulatory (12):** Sector × Compliance (e.g., GDPR Law Firm), Sector × Team Size.
4484
- - **Role & Workflow (10):** Role × Core KPI (e.g., Sales Director Revenue), Role × Daily Toolchain.
4485
- - **Multi-Format Templates (8):** Subject × Format (Excel .xlsx, Notion, Google Sheets, Word, PDF).
4486
- - **Ecosystem & Integrations (10):** Module × App (e.g., CRM × Shopify), Connector × Webhook Trigger.
4487
- - **Problem Playbooks (8):** Pain Point × Step-by-Step Playbook, Bottleneck × ROI.
4488
- - **Interactive Calculators (6):** Time-Saved Estimator, Revenue Uplift Simulator.
4489
- - **Topic Authority Clusters (6):** Financial Metrics (MRR, LTV), Technical Protocols (OAuth, Webhook).
4484
+ 1. **⚡ In-Memory Programmatic Matrix Engine (\`matrixEngine\`):**
4485
+ - \`resolvePage(slug, domain, data, config)\`: Resolves full programmatic pages in < 0.05ms in local RAM.
4486
+ - \`resolveServicePage(serviceSlug, citySlug, ...)\`: Dedicated routing for \`app/[service]/[city]/page.tsx\`.
4487
+ - \`generateSitemapXml()\`, \`generateLlmsTxt()\`, \`generateRobotsTxt()\`.
4490
4488
 
4491
- ---
4489
+ 2. **\uD83C\uDF0D Built-in Global Demographics (\`built-in-locations.ts\`):**
4490
+ - Automatically provisions verified cities, populations, GPS coordinates, and currencies across France, Spain, Germany, UK, US, Belgium, Switzerland, Italy, Canada, Europe, and International markets. Zero manual city typing.
4491
+
4492
+ 3. **\uD83C\uDF10 Dynamic i18n Detector (\`I18nDetector\`):**
4493
+ - Seamless auto-detection and normalization across \`next-intl\`, \`i18next\`, \`paraglide\`, and \`astro:i18n\`. Adapts Google schemas and local currencies automatically.
4494
+
4495
+ 4. **\uD83C\uDFA8 Vector Brand & Social Icons (\`renderBrandIconSvg\`):**
4496
+ - Zero-dependency official SVG vectors for 30+ brands (Facebook, Instagram, LinkedIn, Shopify, Slack, WhatsApp, Google, GitHub, TikTok, YouTube).
4497
+
4498
+ 5. **\uD83C\uDFDB️ Google Schema.org Rich Graphs (\`ExtendedSchemaGraphBuilder\`):**
4499
+ - \`buildAggregateRating\` (Google Gold Stars 4.9★), \`buildAggregateOffer\` (price ranges), \`buildLocalBusiness\` (GPS & opening hours), \`buildSoftwareApplication\`, \`buildHowTo\`, \`buildFAQPage\`, \`buildBreadcrumbs\`.
4500
+
4501
+ 6. **\uD83D\uDD0D URL Decomposition & Analysis (\`UrlyticsEngine\`):**
4502
+ - Deep structural directory decomposition, depth tracking, query parameter analysis, and slug tokenization (inspired by advertools).
4503
+
4504
+ 7. **⚡ SEM Keyword Combinator (\`KeywordPermutatorEngine\`):**
4505
+ - Combinatorial matrix generation: Products × Modifiers × Locations with match types (\`[exact]\`, \`"phrase"\`, \`+broad\`) and intent classification.
4506
+
4507
+ 8. **⚖️ Legal & Editorial Compliance (\`LegalDisclaimerEngine\`):**
4508
+ - 7 SeedRank-grade disclaimer templates, 90-day staleness verification, and multi-language anti-disparagement guardian.
4492
4509
 
4493
- ### \uD83E\uDDF9 6. URL SLUG INTEGRITY & SCHEMA.ORG
4510
+ 9. **\uD83D\uDCCA Telemetry & Cloud Metering (\`matrixEngine.getTelemetryPayload\` & \`LynxAnalyticsClient\`):**
4511
+ - Synchronizes total programmatic pages, indexed hubs, and AI bot crawl hits (GPTBot, ClaudeBot, PerplexityBot) with the LynxSEO Studio dashboard.
4494
4512
 
4495
- - Use \`cleanSeoSlug(text, { language })\` to strip accents, dates, and stop words.
4496
- - Use \`ExtendedSchemaGraphBuilder\` to output valid JSON-LD graphs (\`SoftwareApplication\`, \`LocalBusiness\`, \`HowTo\`, \`FAQPage\`, \`BreadcrumbList\`, \`Organization\`).
4513
+ 10. **\uD83E\uDDF9 URL Slug Engine & Schema.org Graphs:**
4514
+ - \`cleanSeoSlug(text, { language })\`: Strips accents, stop words across 10+ languages, and non-alphanumeric noise.
4515
+ - Outputs Google-validated Schema.org JSON-LD graphs with 0 syntax errors.
4497
4516
  `.trim();
4498
4517
  function getSeoAgentPrompt(customContext) {
4499
4518
  if (!customContext)
package/dist/index.mjs CHANGED
@@ -4327,13 +4327,14 @@ import { matrixEngine, SEO_CONFIG, PSEO_DATASET } from "@/lib/seo";
4327
4327
 
4328
4328
  export default function sitemap(): MetadataRoute.Sitemap {
4329
4329
  const domain = process.env.NEXT_PUBLIC_SITE_URL || "https://example.com";
4330
- const pages = matrixEngine.generateAllMatrices(domain, PSEO_DATASET, SEO_CONFIG);
4331
- return pages.filter((p) => p.robots.includes("index")).map((p) => ({
4332
- url: p.canonicalUrl,
4333
- lastModified: new Date(),
4334
- changeFrequency: "weekly",
4335
- priority: 0.8,
4336
- }));
4330
+ return matrixEngine.generateAllMatrices(domain, PSEO_DATASET, SEO_CONFIG)
4331
+ .filter((p) => p.robots.includes("index"))
4332
+ .map((p) => ({
4333
+ url: p.canonicalUrl,
4334
+ lastModified: new Date(),
4335
+ changeFrequency: "weekly",
4336
+ priority: 0.8,
4337
+ }));
4337
4338
  }
4338
4339
  \`\`\`
4339
4340
 
@@ -4344,49 +4345,67 @@ import { matrixEngine, SEO_CONFIG, PSEO_DATASET } from "@/lib/seo";
4344
4345
 
4345
4346
  export async function GET() {
4346
4347
  const domain = process.env.NEXT_PUBLIC_SITE_URL || "https://example.com";
4347
- const pages = matrixEngine.generateAllMatrices(domain, PSEO_DATASET, SEO_CONFIG);
4348
- const markdown = [
4349
- \`# \${SEO_CONFIG.brandName} Solutions Index\`,
4350
- \`> Structured knowledge feed for LLMs and AI search engines (ChatGPT, Perplexity).\`,
4351
- \`\`,
4352
- \`## Solutions & Matrices\`,
4353
- ...pages.map((p) => \`- [\${p.h1}](\${p.canonicalUrl}): \${p.description}\`),
4354
- ].join("\\n");
4348
+ // 1-Line high-density Markdown feed for ChatGPT Search & Perplexity
4349
+ const markdown = matrixEngine.generateLlmsTxt(domain, PSEO_DATASET, SEO_CONFIG);
4355
4350
  return new NextResponse(markdown, { headers: { "Content-Type": "text/plain; charset=utf-8" } });
4356
4351
  }
4357
4352
  \`\`\`
4358
4353
 
4354
+ #### File 5: Dynamic AI Search & Bot Rules (\`app/robots.ts\` or \`public/robots.txt\`)
4355
+ \`\`\`typescript
4356
+ import { MetadataRoute } from "next";
4357
+ import { matrixEngine } from "@/lib/seo";
4358
+
4359
+ export default function robots(): MetadataRoute.Robots {
4360
+ const domain = process.env.NEXT_PUBLIC_SITE_URL || "https://example.com";
4361
+ return {
4362
+ rules: [
4363
+ { userAgent: "*", allow: "/", disallow: ["/api/", "/admin/"] },
4364
+ { userAgent: ["GPTBot", "ClaudeBot", "PerplexityBot", "Applebot"], allow: "/" },
4365
+ ],
4366
+ sitemap: \`\${domain}/sitemap.xml\`,
4367
+ };
4368
+ }
4369
+ \`\`\`
4370
+
4359
4371
  ---
4360
4372
 
4361
- ### \uD83C\uDFDB️ 5. MATRIX ARCHITECTURE: 10 ROOT PILLARS & 50+ SPECIALIZED SUB-MATRICES
4373
+ ### \uD83E\uDDF0 6. THE COMPLETE LYNXSEO STUDIO ENGINE & TOOL SUITE
4362
4374
 
4363
- 1. **10 Canonical Root Pillars:**
4364
- - Comparisons: \`/vs/{competitor}\`
4365
- - Alternatives: \`/alternatives/{competitor}\` (Zero keyword stuttering)
4366
- - Pricing: \`/pricing/{competitor}\`
4367
- - Audiences: \`/for/{target}\` (Unified industry/role mapping, anti-cannibalization)
4368
- - Integrations: \`/integrations/{app}\` (Clean slug without stop words)
4369
- - Use Cases: \`/use-cases/{useCase}\` (Actionable workflows with HowTo JSON-LD)
4370
- - Templates: \`/templates/{slug}\` (High-converting spreadsheet/notion lead magnets)
4371
- - Glossary: \`/glossary/{term}\` (Topic authority cluster hub)
4372
- - Tools: \`/tools/{calculator}\` (Interactive ROI & value estimators)
4373
- - Local Geo: \`/solutions/{service}/{country}/{city}\` (Tiered Indexing & Mesh Links)
4375
+ The SDK equips applications with 9 enterprise-grade SEO engines:
4374
4376
 
4375
- 2. **50+ Specialized Sub-Matrix Dimensions:**
4376
- - **Industry & Regulatory (12):** Sector × Compliance (e.g., GDPR Law Firm), Sector × Team Size.
4377
- - **Role & Workflow (10):** Role × Core KPI (e.g., Sales Director Revenue), Role × Daily Toolchain.
4378
- - **Multi-Format Templates (8):** Subject × Format (Excel .xlsx, Notion, Google Sheets, Word, PDF).
4379
- - **Ecosystem & Integrations (10):** Module × App (e.g., CRM × Shopify), Connector × Webhook Trigger.
4380
- - **Problem Playbooks (8):** Pain Point × Step-by-Step Playbook, Bottleneck × ROI.
4381
- - **Interactive Calculators (6):** Time-Saved Estimator, Revenue Uplift Simulator.
4382
- - **Topic Authority Clusters (6):** Financial Metrics (MRR, LTV), Technical Protocols (OAuth, Webhook).
4377
+ 1. **⚡ In-Memory Programmatic Matrix Engine (\`matrixEngine\`):**
4378
+ - \`resolvePage(slug, domain, data, config)\`: Resolves full programmatic pages in < 0.05ms in local RAM.
4379
+ - \`resolveServicePage(serviceSlug, citySlug, ...)\`: Dedicated routing for \`app/[service]/[city]/page.tsx\`.
4380
+ - \`generateSitemapXml()\`, \`generateLlmsTxt()\`, \`generateRobotsTxt()\`.
4383
4381
 
4384
- ---
4382
+ 2. **\uD83C\uDF0D Built-in Global Demographics (\`built-in-locations.ts\`):**
4383
+ - Automatically provisions verified cities, populations, GPS coordinates, and currencies across France, Spain, Germany, UK, US, Belgium, Switzerland, Italy, Canada, Europe, and International markets. Zero manual city typing.
4384
+
4385
+ 3. **\uD83C\uDF10 Dynamic i18n Detector (\`I18nDetector\`):**
4386
+ - Seamless auto-detection and normalization across \`next-intl\`, \`i18next\`, \`paraglide\`, and \`astro:i18n\`. Adapts Google schemas and local currencies automatically.
4387
+
4388
+ 4. **\uD83C\uDFA8 Vector Brand & Social Icons (\`renderBrandIconSvg\`):**
4389
+ - Zero-dependency official SVG vectors for 30+ brands (Facebook, Instagram, LinkedIn, Shopify, Slack, WhatsApp, Google, GitHub, TikTok, YouTube).
4390
+
4391
+ 5. **\uD83C\uDFDB️ Google Schema.org Rich Graphs (\`ExtendedSchemaGraphBuilder\`):**
4392
+ - \`buildAggregateRating\` (Google Gold Stars 4.9★), \`buildAggregateOffer\` (price ranges), \`buildLocalBusiness\` (GPS & opening hours), \`buildSoftwareApplication\`, \`buildHowTo\`, \`buildFAQPage\`, \`buildBreadcrumbs\`.
4393
+
4394
+ 6. **\uD83D\uDD0D URL Decomposition & Analysis (\`UrlyticsEngine\`):**
4395
+ - Deep structural directory decomposition, depth tracking, query parameter analysis, and slug tokenization (inspired by advertools).
4396
+
4397
+ 7. **⚡ SEM Keyword Combinator (\`KeywordPermutatorEngine\`):**
4398
+ - Combinatorial matrix generation: Products × Modifiers × Locations with match types (\`[exact]\`, \`"phrase"\`, \`+broad\`) and intent classification.
4399
+
4400
+ 8. **⚖️ Legal & Editorial Compliance (\`LegalDisclaimerEngine\`):**
4401
+ - 7 SeedRank-grade disclaimer templates, 90-day staleness verification, and multi-language anti-disparagement guardian.
4385
4402
 
4386
- ### \uD83E\uDDF9 6. URL SLUG INTEGRITY & SCHEMA.ORG
4403
+ 9. **\uD83D\uDCCA Telemetry & Cloud Metering (\`matrixEngine.getTelemetryPayload\` & \`LynxAnalyticsClient\`):**
4404
+ - Synchronizes total programmatic pages, indexed hubs, and AI bot crawl hits (GPTBot, ClaudeBot, PerplexityBot) with the LynxSEO Studio dashboard.
4387
4405
 
4388
- - Use \`cleanSeoSlug(text, { language })\` to strip accents, dates, and stop words.
4389
- - Use \`ExtendedSchemaGraphBuilder\` to output valid JSON-LD graphs (\`SoftwareApplication\`, \`LocalBusiness\`, \`HowTo\`, \`FAQPage\`, \`BreadcrumbList\`, \`Organization\`).
4406
+ 10. **\uD83E\uDDF9 URL Slug Engine & Schema.org Graphs:**
4407
+ - \`cleanSeoSlug(text, { language })\`: Strips accents, stop words across 10+ languages, and non-alphanumeric noise.
4408
+ - Outputs Google-validated Schema.org JSON-LD graphs with 0 syntax errors.
4390
4409
  `.trim();
4391
4410
  function getSeoAgentPrompt(customContext) {
4392
4411
  if (!customContext)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lynxflow/seo-engine",
3
- "version": "1.6.0",
3
+ "version": "1.6.1",
4
4
  "description": "High-Performance Multilingual Programmatic SEO & AI Search Engine SDK",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",
package/src/llm-prompt.ts CHANGED
@@ -214,13 +214,14 @@ import { matrixEngine, SEO_CONFIG, PSEO_DATASET } from "@/lib/seo";
214
214
 
215
215
  export default function sitemap(): MetadataRoute.Sitemap {
216
216
  const domain = process.env.NEXT_PUBLIC_SITE_URL || "https://example.com";
217
- const pages = matrixEngine.generateAllMatrices(domain, PSEO_DATASET, SEO_CONFIG);
218
- return pages.filter((p) => p.robots.includes("index")).map((p) => ({
219
- url: p.canonicalUrl,
220
- lastModified: new Date(),
221
- changeFrequency: "weekly",
222
- priority: 0.8,
223
- }));
217
+ return matrixEngine.generateAllMatrices(domain, PSEO_DATASET, SEO_CONFIG)
218
+ .filter((p) => p.robots.includes("index"))
219
+ .map((p) => ({
220
+ url: p.canonicalUrl,
221
+ lastModified: new Date(),
222
+ changeFrequency: "weekly",
223
+ priority: 0.8,
224
+ }));
224
225
  }
225
226
  \`\`\`
226
227
 
@@ -231,49 +232,67 @@ import { matrixEngine, SEO_CONFIG, PSEO_DATASET } from "@/lib/seo";
231
232
 
232
233
  export async function GET() {
233
234
  const domain = process.env.NEXT_PUBLIC_SITE_URL || "https://example.com";
234
- const pages = matrixEngine.generateAllMatrices(domain, PSEO_DATASET, SEO_CONFIG);
235
- const markdown = [
236
- \`# \${SEO_CONFIG.brandName} Solutions Index\`,
237
- \`> Structured knowledge feed for LLMs and AI search engines (ChatGPT, Perplexity).\`,
238
- \`\`,
239
- \`## Solutions & Matrices\`,
240
- ...pages.map((p) => \`- [\${p.h1}](\${p.canonicalUrl}): \${p.description}\`),
241
- ].join("\\n");
235
+ // 1-Line high-density Markdown feed for ChatGPT Search & Perplexity
236
+ const markdown = matrixEngine.generateLlmsTxt(domain, PSEO_DATASET, SEO_CONFIG);
242
237
  return new NextResponse(markdown, { headers: { "Content-Type": "text/plain; charset=utf-8" } });
243
238
  }
244
239
  \`\`\`
245
240
 
246
- ---
241
+ #### File 5: Dynamic AI Search & Bot Rules (\`app/robots.ts\` or \`public/robots.txt\`)
242
+ \`\`\`typescript
243
+ import { MetadataRoute } from "next";
244
+ import { matrixEngine } from "@/lib/seo";
247
245
 
248
- ### 🏛️ 5. MATRIX ARCHITECTURE: 10 ROOT PILLARS & 50+ SPECIALIZED SUB-MATRICES
249
-
250
- 1. **10 Canonical Root Pillars:**
251
- - Comparisons: \`/vs/{competitor}\`
252
- - Alternatives: \`/alternatives/{competitor}\` (Zero keyword stuttering)
253
- - Pricing: \`/pricing/{competitor}\`
254
- - Audiences: \`/for/{target}\` (Unified industry/role mapping, anti-cannibalization)
255
- - Integrations: \`/integrations/{app}\` (Clean slug without stop words)
256
- - Use Cases: \`/use-cases/{useCase}\` (Actionable workflows with HowTo JSON-LD)
257
- - Templates: \`/templates/{slug}\` (High-converting spreadsheet/notion lead magnets)
258
- - Glossary: \`/glossary/{term}\` (Topic authority cluster hub)
259
- - Tools: \`/tools/{calculator}\` (Interactive ROI & value estimators)
260
- - Local Geo: \`/solutions/{service}/{country}/{city}\` (Tiered Indexing & Mesh Links)
261
-
262
- 2. **50+ Specialized Sub-Matrix Dimensions:**
263
- - **Industry & Regulatory (12):** Sector × Compliance (e.g., GDPR Law Firm), Sector × Team Size.
264
- - **Role & Workflow (10):** Role × Core KPI (e.g., Sales Director Revenue), Role × Daily Toolchain.
265
- - **Multi-Format Templates (8):** Subject × Format (Excel .xlsx, Notion, Google Sheets, Word, PDF).
266
- - **Ecosystem & Integrations (10):** Module × App (e.g., CRM × Shopify), Connector × Webhook Trigger.
267
- - **Problem Playbooks (8):** Pain Point × Step-by-Step Playbook, Bottleneck × ROI.
268
- - **Interactive Calculators (6):** Time-Saved Estimator, Revenue Uplift Simulator.
269
- - **Topic Authority Clusters (6):** Financial Metrics (MRR, LTV), Technical Protocols (OAuth, Webhook).
246
+ export default function robots(): MetadataRoute.Robots {
247
+ const domain = process.env.NEXT_PUBLIC_SITE_URL || "https://example.com";
248
+ return {
249
+ rules: [
250
+ { userAgent: "*", allow: "/", disallow: ["/api/", "/admin/"] },
251
+ { userAgent: ["GPTBot", "ClaudeBot", "PerplexityBot", "Applebot"], allow: "/" },
252
+ ],
253
+ sitemap: \`\${domain}/sitemap.xml\`,
254
+ };
255
+ }
256
+ \`\`\`
270
257
 
271
258
  ---
272
259
 
273
- ### 🧹 6. URL SLUG INTEGRITY & SCHEMA.ORG
260
+ ### 🧰 6. THE COMPLETE LYNXSEO STUDIO ENGINE & TOOL SUITE
261
+
262
+ The SDK equips applications with 9 enterprise-grade SEO engines:
263
+
264
+ 1. **⚡ In-Memory Programmatic Matrix Engine (\`matrixEngine\`):**
265
+ - \`resolvePage(slug, domain, data, config)\`: Resolves full programmatic pages in < 0.05ms in local RAM.
266
+ - \`resolveServicePage(serviceSlug, citySlug, ...)\`: Dedicated routing for \`app/[service]/[city]/page.tsx\`.
267
+ - \`generateSitemapXml()\`, \`generateLlmsTxt()\`, \`generateRobotsTxt()\`.
268
+
269
+ 2. **🌍 Built-in Global Demographics (\`built-in-locations.ts\`):**
270
+ - Automatically provisions verified cities, populations, GPS coordinates, and currencies across France, Spain, Germany, UK, US, Belgium, Switzerland, Italy, Canada, Europe, and International markets. Zero manual city typing.
271
+
272
+ 3. **🌐 Dynamic i18n Detector (\`I18nDetector\`):**
273
+ - Seamless auto-detection and normalization across \`next-intl\`, \`i18next\`, \`paraglide\`, and \`astro:i18n\`. Adapts Google schemas and local currencies automatically.
274
+
275
+ 4. **🎨 Vector Brand & Social Icons (\`renderBrandIconSvg\`):**
276
+ - Zero-dependency official SVG vectors for 30+ brands (Facebook, Instagram, LinkedIn, Shopify, Slack, WhatsApp, Google, GitHub, TikTok, YouTube).
277
+
278
+ 5. **🏛️ Google Schema.org Rich Graphs (\`ExtendedSchemaGraphBuilder\`):**
279
+ - \`buildAggregateRating\` (Google Gold Stars 4.9★), \`buildAggregateOffer\` (price ranges), \`buildLocalBusiness\` (GPS & opening hours), \`buildSoftwareApplication\`, \`buildHowTo\`, \`buildFAQPage\`, \`buildBreadcrumbs\`.
280
+
281
+ 6. **🔍 URL Decomposition & Analysis (\`UrlyticsEngine\`):**
282
+ - Deep structural directory decomposition, depth tracking, query parameter analysis, and slug tokenization (inspired by advertools).
283
+
284
+ 7. **⚡ SEM Keyword Combinator (\`KeywordPermutatorEngine\`):**
285
+ - Combinatorial matrix generation: Products × Modifiers × Locations with match types (\`[exact]\`, \`"phrase"\`, \`+broad\`) and intent classification.
286
+
287
+ 8. **⚖️ Legal & Editorial Compliance (\`LegalDisclaimerEngine\`):**
288
+ - 7 SeedRank-grade disclaimer templates, 90-day staleness verification, and multi-language anti-disparagement guardian.
289
+
290
+ 9. **📊 Telemetry & Cloud Metering (\`matrixEngine.getTelemetryPayload\` & \`LynxAnalyticsClient\`):**
291
+ - Synchronizes total programmatic pages, indexed hubs, and AI bot crawl hits (GPTBot, ClaudeBot, PerplexityBot) with the LynxSEO Studio dashboard.
274
292
 
275
- - Use \`cleanSeoSlug(text, { language })\` to strip accents, dates, and stop words.
276
- - Use \`ExtendedSchemaGraphBuilder\` to output valid JSON-LD graphs (\`SoftwareApplication\`, \`LocalBusiness\`, \`HowTo\`, \`FAQPage\`, \`BreadcrumbList\`, \`Organization\`).
293
+ 10. **🧹 URL Slug Engine & Schema.org Graphs:**
294
+ - \`cleanSeoSlug(text, { language })\`: Strips accents, stop words across 10+ languages, and non-alphanumeric noise.
295
+ - Outputs Google-validated Schema.org JSON-LD graphs with 0 syntax errors.
277
296
  `.trim();
278
297
 
279
298
  /**