@lynxflow/seo-engine 1.4.1 → 1.5.0
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/README.md +84 -339
- package/TUTORIEL_INTEGRATION_SITE.md +283 -0
- package/connectors/wordpress/lynxseo-connector.zip +0 -0
- package/dist/ad-intelligence-cro.d.ts +58 -0
- package/dist/ai-bots-log-analyzer.d.ts +36 -0
- package/dist/analytics-client.d.ts +48 -11
- package/dist/auth-key.d.ts +9 -0
- package/dist/brand-dna-calendar.d.ts +35 -0
- package/dist/copy-frameworks-master.d.ts +56 -0
- package/dist/cro-copywriting-engine.d.ts +46 -0
- package/dist/crosslink-scorer.d.ts +33 -0
- package/dist/embeddable-seo-widget.d.ts +12 -0
- package/dist/engine.d.ts +29 -1
- package/dist/engine.test.d.ts +1 -0
- package/dist/extended-schemas.d.ts +106 -0
- package/dist/geo-mesh-linking.d.ts +33 -0
- package/dist/index.d.ts +88 -0
- package/dist/index.js +4162 -128
- package/dist/index.mjs +4090 -98
- package/dist/instant-matrix-search.d.ts +19 -0
- package/dist/isr-cache-manager.d.ts +35 -0
- package/dist/knowledge-graph-linker.d.ts +29 -0
- package/dist/legal-disclaimers.d.ts +46 -0
- package/dist/llm-content-cleaner.d.ts +16 -0
- package/dist/llm-prompt.d.ts +13 -0
- package/dist/master-marketing-engine.d.ts +114 -0
- package/dist/matrix-engine.d.ts +201 -0
- package/dist/mcp-seo-server.d.ts +21 -0
- package/dist/ngram-density-analyzer.d.ts +35 -0
- package/dist/rank-math-parity.d.ts +58 -0
- package/dist/real-reviews-sync.d.ts +73 -0
- package/dist/rss-syndication-feed.d.ts +25 -0
- package/dist/schema-builder.d.ts +6 -0
- package/dist/seo-opportunities-decay.d.ts +54 -0
- package/dist/serp-history-alerts.d.ts +27 -0
- package/dist/slug-engine.d.ts +32 -0
- package/dist/social-ads-seo.d.ts +77 -0
- package/dist/social-growth-suite.d.ts +125 -0
- package/dist/social-trend-seo.d.ts +38 -0
- package/dist/social-video-seo.d.ts +62 -0
- package/dist/team-rbac.d.ts +17 -0
- package/dist/technical-rules-auditor.d.ts +50 -0
- package/dist/types.d.ts +4 -44
- package/dist/yoast-parity.d.ts +45 -0
- package/package.json +8 -5
- package/src/ad-intelligence-cro.ts +140 -0
- package/src/ai-bots-log-analyzer.ts +127 -0
- package/src/analytics-client.ts +222 -48
- package/src/auth-key.ts +59 -0
- package/src/brand-dna-calendar.ts +120 -0
- package/src/copy-frameworks-master.ts +89 -0
- package/src/cro-copywriting-engine.ts +105 -0
- package/src/crosslink-scorer.ts +101 -0
- package/src/embeddable-seo-widget.ts +57 -0
- package/src/engine.test.ts +136 -0
- package/src/engine.ts +218 -27
- package/src/extended-schemas.ts +279 -0
- package/src/geo-mesh-linking.ts +93 -0
- package/src/index.ts +89 -0
- package/src/instant-matrix-search.ts +48 -0
- package/src/isr-cache-manager.ts +78 -0
- package/src/knowledge-graph-linker.ts +81 -0
- package/src/legal-disclaimers.ts +407 -0
- package/src/llm-content-cleaner.ts +64 -0
- package/src/llm-prompt.ts +70 -0
- package/src/master-marketing-engine.ts +314 -0
- package/src/matrix-engine.ts +818 -0
- package/src/mcp-seo-server.ts +108 -0
- package/src/ngram-density-analyzer.ts +108 -0
- package/src/rank-math-parity.ts +235 -0
- package/src/real-reviews-sync.ts +207 -0
- package/src/rss-syndication-feed.ts +56 -0
- package/src/schema-builder.ts +71 -24
- package/src/seo-opportunities-decay.ts +154 -0
- package/src/serp-history-alerts.ts +75 -0
- package/src/slug-engine.ts +183 -0
- package/src/social-ads-seo.ts +211 -0
- package/src/social-growth-suite.ts +310 -0
- package/src/social-trend-seo.ts +103 -0
- package/src/social-video-seo.ts +100 -0
- package/src/team-rbac.ts +61 -0
- package/src/technical-rules-auditor.ts +171 -0
- package/src/types.ts +22 -47
- package/src/yoast-parity.ts +161 -0
- package/tsconfig.json +2 -1
package/dist/engine.d.ts
CHANGED
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
*/
|
|
18
18
|
import type { LynxSeoConfig, LynxResolvedPage } from "./types";
|
|
19
19
|
import { IndexNowClient, type IndexNowResponse } from "./indexnow-client";
|
|
20
|
-
import { LynxAnalyticsClient } from "./analytics-client";
|
|
20
|
+
import { LynxAnalyticsClient, type UrlTrafficStats } from "./analytics-client";
|
|
21
21
|
import { SerpClient } from "./serp-client";
|
|
22
22
|
import { BacklinksClient } from "./backlinks-client";
|
|
23
23
|
import { AiCopilotClient } from "./ai-copilot-client";
|
|
@@ -77,8 +77,36 @@ export declare class LynxSeoEngine {
|
|
|
77
77
|
* Returns the list of all distinct unique URL paths generated so far.
|
|
78
78
|
*/
|
|
79
79
|
getUniquePageList(): string[];
|
|
80
|
+
/**
|
|
81
|
+
* Alias for getUniquePageList: returns all distinct unique URLs created by the engine.
|
|
82
|
+
*/
|
|
83
|
+
getAllCreatedLinks(): string[];
|
|
84
|
+
/**
|
|
85
|
+
* Returns full traffic statistics (views, visitors, AI bots, conversions) for all created links.
|
|
86
|
+
*/
|
|
87
|
+
getStatsPerLink(): UrlTrafficStats[];
|
|
88
|
+
/**
|
|
89
|
+
* Returns traffic statistics and visit counts for a single specific link.
|
|
90
|
+
*/
|
|
91
|
+
getLinkStats(path: string): UrlTrafficStats;
|
|
80
92
|
/**
|
|
81
93
|
* Performs an automated deep crawl and technical SEO audit of the configured domain.
|
|
82
94
|
*/
|
|
83
95
|
crawlSite(options?: CrawlOptions): Promise<SiteAuditSummary>;
|
|
96
|
+
/**
|
|
97
|
+
* 🗺️ Generates all combinatorially possible programmatic SEO URLs based on registered services and matrices.
|
|
98
|
+
*/
|
|
99
|
+
generateAllPossibleUrls(): string[];
|
|
100
|
+
/**
|
|
101
|
+
* 🗺️ Generates a fully compliant XML sitemap string for Googlebot and Bing.
|
|
102
|
+
*/
|
|
103
|
+
generateSitemapXml(customUrls?: string[]): string;
|
|
104
|
+
/**
|
|
105
|
+
* 🤖 Generates a compliant robots.txt with AI search crawler rules and sitemap link.
|
|
106
|
+
*/
|
|
107
|
+
generateRobotsTxt(customSitemapUrl?: string): string;
|
|
108
|
+
/**
|
|
109
|
+
* 📄 Generates the official /llms.txt markdown feed for LLM agents (ChatGPT, Claude, Perplexity).
|
|
110
|
+
*/
|
|
111
|
+
generateLlmsTxt(): string;
|
|
84
112
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Extended Universal Schema.org Rich Graph Builder
|
|
3
|
+
* Supports 50+ Schema.org official types for Google Search Rich Results:
|
|
4
|
+
* - SoftwareApplication, WebApplication, MobileApplication
|
|
5
|
+
* - 35+ LocalBusiness Subtypes (Plumber, HVACBusiness, Electrician, Dentist, LegalService, AccountingService, etc.)
|
|
6
|
+
* - Organization with Entity SEO sameAs links (Wikidata, Crunchbase, LinkedIn)
|
|
7
|
+
* - Product, Offer, MerchantReturnPolicy
|
|
8
|
+
* - Article, TechArticle, NewsArticle
|
|
9
|
+
* - HowTo, HowToStep
|
|
10
|
+
* - FAQPage
|
|
11
|
+
* - BreadcrumbList
|
|
12
|
+
*/
|
|
13
|
+
export declare const SCHEMA_LOCAL_BUSINESS_MAP: Record<string, string>;
|
|
14
|
+
export interface SchemaOrgOrganizationOpts {
|
|
15
|
+
name: string;
|
|
16
|
+
url: string;
|
|
17
|
+
logo?: string;
|
|
18
|
+
sameAs?: string[];
|
|
19
|
+
contactPoint?: {
|
|
20
|
+
telephone: string;
|
|
21
|
+
contactType: string;
|
|
22
|
+
availableLanguage: string[];
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
export interface SchemaOrgLocalBusinessOpts {
|
|
26
|
+
name: string;
|
|
27
|
+
url: string;
|
|
28
|
+
schemaType?: string;
|
|
29
|
+
telephone?: string;
|
|
30
|
+
email?: string;
|
|
31
|
+
streetAddress?: string;
|
|
32
|
+
city: string;
|
|
33
|
+
region?: string;
|
|
34
|
+
postalCode?: string;
|
|
35
|
+
country: string;
|
|
36
|
+
latitude?: number;
|
|
37
|
+
longitude?: number;
|
|
38
|
+
openingHours?: string[];
|
|
39
|
+
priceRange?: string;
|
|
40
|
+
}
|
|
41
|
+
export interface SchemaOrgProductOpts {
|
|
42
|
+
name: string;
|
|
43
|
+
description: string;
|
|
44
|
+
url: string;
|
|
45
|
+
brandName: string;
|
|
46
|
+
price: number;
|
|
47
|
+
currency: string;
|
|
48
|
+
image?: string;
|
|
49
|
+
}
|
|
50
|
+
export interface SchemaOrgArticleOpts {
|
|
51
|
+
headline: string;
|
|
52
|
+
description: string;
|
|
53
|
+
url: string;
|
|
54
|
+
datePublished?: string;
|
|
55
|
+
dateModified?: string;
|
|
56
|
+
authorName: string;
|
|
57
|
+
publisherName: string;
|
|
58
|
+
}
|
|
59
|
+
export declare class ExtendedSchemaGraphBuilder {
|
|
60
|
+
/**
|
|
61
|
+
* Resolves the most accurate Schema.org type for a business sector or keyword.
|
|
62
|
+
*/
|
|
63
|
+
static resolveBusinessType(industryOrSectorSlug: string): string;
|
|
64
|
+
/**
|
|
65
|
+
* 1. Organization with Entity SEO sameAs links
|
|
66
|
+
*/
|
|
67
|
+
static buildOrganization(opts: SchemaOrgOrganizationOpts): Record<string, unknown>;
|
|
68
|
+
/**
|
|
69
|
+
* 2. LocalBusiness with GeoCoordinates & Address
|
|
70
|
+
*/
|
|
71
|
+
static buildLocalBusiness(opts: SchemaOrgLocalBusinessOpts): Record<string, unknown>;
|
|
72
|
+
/**
|
|
73
|
+
* 3. SoftwareApplication & WebApplication
|
|
74
|
+
*/
|
|
75
|
+
static buildSoftwareApplication(opts: {
|
|
76
|
+
name: string;
|
|
77
|
+
description: string;
|
|
78
|
+
url: string;
|
|
79
|
+
priceMonthly?: number;
|
|
80
|
+
currency?: string;
|
|
81
|
+
operatingSystem?: string;
|
|
82
|
+
category?: string;
|
|
83
|
+
}): Record<string, unknown>;
|
|
84
|
+
/**
|
|
85
|
+
* 4. FAQPage
|
|
86
|
+
*/
|
|
87
|
+
static buildFAQPage(faqs: {
|
|
88
|
+
question: string;
|
|
89
|
+
answer: string;
|
|
90
|
+
}[]): Record<string, unknown>;
|
|
91
|
+
/**
|
|
92
|
+
* 5. HowTo & HowToStep
|
|
93
|
+
*/
|
|
94
|
+
static buildHowTo(opts: {
|
|
95
|
+
name: string;
|
|
96
|
+
description: string;
|
|
97
|
+
steps: string[];
|
|
98
|
+
}): Record<string, unknown>;
|
|
99
|
+
/**
|
|
100
|
+
* 6. BreadcrumbList
|
|
101
|
+
*/
|
|
102
|
+
static buildBreadcrumbs(items: {
|
|
103
|
+
name: string;
|
|
104
|
+
url: string;
|
|
105
|
+
}[]): Record<string, unknown>;
|
|
106
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 🗺️ Geographic Mesh Linking Engine
|
|
3
|
+
*
|
|
4
|
+
* Implements geodesic distance calculation (Haversine formula) and
|
|
5
|
+
* administrative zone clustering to connect neighboring cities and propagate PageRank.
|
|
6
|
+
*/
|
|
7
|
+
export interface GeoCoordinate {
|
|
8
|
+
latitude: number;
|
|
9
|
+
longitude: number;
|
|
10
|
+
}
|
|
11
|
+
export interface MeshCity {
|
|
12
|
+
slug: string;
|
|
13
|
+
name: string;
|
|
14
|
+
departmentCode?: string;
|
|
15
|
+
region?: string;
|
|
16
|
+
country: string;
|
|
17
|
+
coordinates?: GeoCoordinate;
|
|
18
|
+
population?: number;
|
|
19
|
+
}
|
|
20
|
+
export declare class GeoMeshLinkingEngine {
|
|
21
|
+
/**
|
|
22
|
+
* Computes the great-circle distance between two points in kilometers (Haversine formula).
|
|
23
|
+
*/
|
|
24
|
+
static computeDistanceKm(coord1: GeoCoordinate, coord2: GeoCoordinate): number;
|
|
25
|
+
private static deg2rad;
|
|
26
|
+
/**
|
|
27
|
+
* Finds the N closest neighbor cities within the same country / department / distance.
|
|
28
|
+
*/
|
|
29
|
+
static findClosestNeighbors(targetCity: MeshCity, allCities: MeshCity[], maxNeighbors?: number, maxDistanceKm?: number): {
|
|
30
|
+
city: MeshCity;
|
|
31
|
+
distanceKm?: number;
|
|
32
|
+
}[];
|
|
33
|
+
}
|
package/dist/index.d.ts
CHANGED
|
@@ -10,6 +10,10 @@
|
|
|
10
10
|
* - 🦩 Lago Metered Token Billing (`ai_tokens`) & Hyperswitch Payment Switch
|
|
11
11
|
*/
|
|
12
12
|
export * from "./engine";
|
|
13
|
+
export * from "./slug-engine";
|
|
14
|
+
export * from "./legal-disclaimers";
|
|
15
|
+
export * from "./matrix-engine";
|
|
16
|
+
export * from "./llm-prompt";
|
|
13
17
|
export * from "./auth-key";
|
|
14
18
|
export * from "./token-quota-manager";
|
|
15
19
|
export * from "./lago-token-meter";
|
|
@@ -17,11 +21,39 @@ export * from "./indexnow-client";
|
|
|
17
21
|
export * from "./site-auditor";
|
|
18
22
|
export * from "./site-crawler";
|
|
19
23
|
export * from "./schema-builder";
|
|
24
|
+
export * from "./extended-schemas";
|
|
20
25
|
export * from "./analytics-client";
|
|
21
26
|
export * from "./serp-client";
|
|
22
27
|
export * from "./backlinks-client";
|
|
23
28
|
export * from "./ai-copilot-client";
|
|
24
29
|
export * from "./types";
|
|
30
|
+
export * from "./geo-mesh-linking";
|
|
31
|
+
export * from "./brand-dna-calendar";
|
|
32
|
+
export * from "./technical-rules-auditor";
|
|
33
|
+
export * from "./ai-bots-log-analyzer";
|
|
34
|
+
export * from "./serp-history-alerts";
|
|
35
|
+
export * from "./seo-opportunities-decay";
|
|
36
|
+
export * from "./knowledge-graph-linker";
|
|
37
|
+
export * from "./cro-copywriting-engine";
|
|
38
|
+
export * from "./mcp-seo-server";
|
|
39
|
+
export * from "./master-marketing-engine";
|
|
40
|
+
export * from "./social-video-seo";
|
|
41
|
+
export * from "./social-trend-seo";
|
|
42
|
+
export * from "./crosslink-scorer";
|
|
43
|
+
export * from "./instant-matrix-search";
|
|
44
|
+
export * from "./rss-syndication-feed";
|
|
45
|
+
export * from "./embeddable-seo-widget";
|
|
46
|
+
export * from "./ngram-density-analyzer";
|
|
47
|
+
export * from "./isr-cache-manager";
|
|
48
|
+
export * from "./llm-content-cleaner";
|
|
49
|
+
export * from "./copy-frameworks-master";
|
|
50
|
+
export * from "./social-ads-seo";
|
|
51
|
+
export * from "./ad-intelligence-cro";
|
|
52
|
+
export * from "./rank-math-parity";
|
|
53
|
+
export * from "./yoast-parity";
|
|
54
|
+
export * from "./social-growth-suite";
|
|
55
|
+
export * from "./team-rbac";
|
|
56
|
+
export * from "./real-reviews-sync";
|
|
25
57
|
import { LynxSeoEngine, type EngineConfig } from "./engine";
|
|
26
58
|
import { ApiKeyGuardian } from "./auth-key";
|
|
27
59
|
import { TokenQuotaManager } from "./token-quota-manager";
|
|
@@ -30,6 +62,34 @@ import { IndexNowClient } from "./indexnow-client";
|
|
|
30
62
|
import { SiteAuditor } from "./site-auditor";
|
|
31
63
|
import { DeepCrawlerAuditor } from "./site-crawler";
|
|
32
64
|
import { SchemaGraphBuilder } from "./schema-builder";
|
|
65
|
+
import { ExtendedSchemaGraphBuilder } from "./extended-schemas";
|
|
66
|
+
import { GeoMeshLinkingEngine } from "./geo-mesh-linking";
|
|
67
|
+
import { BrandDnaCalendarEngine } from "./brand-dna-calendar";
|
|
68
|
+
import { TechnicalRulesAuditor } from "./technical-rules-auditor";
|
|
69
|
+
import { AiBotsLogAnalyzer } from "./ai-bots-log-analyzer";
|
|
70
|
+
import { SerpRankHistoryEngine } from "./serp-history-alerts";
|
|
71
|
+
import { SeoOpportunitiesDecayDetector } from "./seo-opportunities-decay";
|
|
72
|
+
import { KnowledgeGraphLinker } from "./knowledge-graph-linker";
|
|
73
|
+
import { CroCopywritingEngine } from "./cro-copywriting-engine";
|
|
74
|
+
import { McpSeoServerHub } from "./mcp-seo-server";
|
|
75
|
+
import { MasterMarketingEngine } from "./master-marketing-engine";
|
|
76
|
+
import { SocialVideoSeoAnalyticsEngine } from "./social-video-seo";
|
|
77
|
+
import { SocialTrendSeoGenerator } from "./social-trend-seo";
|
|
78
|
+
import { CrosslinkScorerEngine } from "./crosslink-scorer";
|
|
79
|
+
import { InstantMatrixSearchEngine } from "./instant-matrix-search";
|
|
80
|
+
import { RssSyndicationFeedGenerator } from "./rss-syndication-feed";
|
|
81
|
+
import { EmbeddableSeoWidgetGenerator } from "./embeddable-seo-widget";
|
|
82
|
+
import { NGramDensityAnalyzer } from "./ngram-density-analyzer";
|
|
83
|
+
import { IsrCacheManager } from "./isr-cache-manager";
|
|
84
|
+
import { LlmContentCleaner } from "./llm-content-cleaner";
|
|
85
|
+
import { CopywritingFrameworksMaster } from "./copy-frameworks-master";
|
|
86
|
+
import { SocialAdsSocialSeoEngine } from "./social-ads-seo";
|
|
87
|
+
import { AdIntelligenceCroEngine } from "./ad-intelligence-cro";
|
|
88
|
+
import { RankMathParityEngine } from "./rank-math-parity";
|
|
89
|
+
import { YoastParityEngine } from "./yoast-parity";
|
|
90
|
+
import { SocialGrowthSuite } from "./social-growth-suite";
|
|
91
|
+
import { TeamRbacEngine } from "./team-rbac";
|
|
92
|
+
import { RealReviewsSyncEngine } from "./real-reviews-sync";
|
|
33
93
|
export declare function createLynxSeoEngine(config: EngineConfig): LynxSeoEngine;
|
|
34
94
|
export declare const LynxSeo: {
|
|
35
95
|
createEngine: typeof createLynxSeoEngine;
|
|
@@ -42,5 +102,33 @@ export declare const LynxSeo: {
|
|
|
42
102
|
crawlDomain: typeof DeepCrawlerAuditor.crawlAndAuditDomain;
|
|
43
103
|
inspectHtmlSnapshot: typeof DeepCrawlerAuditor.inspectHtmlSnapshot;
|
|
44
104
|
buildSchemaGraph: typeof SchemaGraphBuilder.buildGraph;
|
|
105
|
+
extendedSchemas: typeof ExtendedSchemaGraphBuilder;
|
|
106
|
+
geoMesh: typeof GeoMeshLinkingEngine;
|
|
107
|
+
brandDna: typeof BrandDnaCalendarEngine;
|
|
108
|
+
technicalAuditor: typeof TechnicalRulesAuditor;
|
|
109
|
+
aiBotsLogger: typeof AiBotsLogAnalyzer;
|
|
110
|
+
serpRankHistory: typeof SerpRankHistoryEngine;
|
|
111
|
+
opportunitiesDecay: typeof SeoOpportunitiesDecayDetector;
|
|
112
|
+
knowledgeGraph: typeof KnowledgeGraphLinker;
|
|
113
|
+
croCopywriting: typeof CroCopywritingEngine;
|
|
114
|
+
mcpServer: typeof McpSeoServerHub;
|
|
115
|
+
marketing: typeof MasterMarketingEngine;
|
|
116
|
+
socialVideo: typeof SocialVideoSeoAnalyticsEngine;
|
|
117
|
+
socialTrends: typeof SocialTrendSeoGenerator;
|
|
118
|
+
crosslinks: typeof CrosslinkScorerEngine;
|
|
119
|
+
instantSearch: typeof InstantMatrixSearchEngine;
|
|
120
|
+
rssFeed: typeof RssSyndicationFeedGenerator;
|
|
121
|
+
embeddableWidget: typeof EmbeddableSeoWidgetGenerator;
|
|
122
|
+
ngramDensity: typeof NGramDensityAnalyzer;
|
|
123
|
+
isrCache: typeof IsrCacheManager;
|
|
124
|
+
llmCleaner: typeof LlmContentCleaner;
|
|
125
|
+
copyFrameworks: typeof CopywritingFrameworksMaster;
|
|
126
|
+
socialAds: typeof SocialAdsSocialSeoEngine;
|
|
127
|
+
adIntelligence: typeof AdIntelligenceCroEngine;
|
|
128
|
+
rankMathScore: typeof RankMathParityEngine;
|
|
129
|
+
yoastReadability: typeof YoastParityEngine;
|
|
130
|
+
socialGrowth: typeof SocialGrowthSuite;
|
|
131
|
+
rbac: typeof TeamRbacEngine;
|
|
132
|
+
realReviews: typeof RealReviewsSyncEngine;
|
|
45
133
|
};
|
|
46
134
|
export default LynxSeo;
|