@lynxflow/seo-engine 2.3.0 → 2.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 +1 -1
- package/dist/competitor-gap-blueprint.d.ts +34 -0
- package/dist/engagement-hook-analyzer.d.ts +50 -0
- package/dist/index.d.ts +18 -0
- package/dist/index.js +668 -0
- package/dist/index.mjs +668 -0
- package/dist/keyword-density-guard.d.ts +28 -0
- package/dist/search-intent-classifier.d.ts +28 -0
- package/dist/seo-opportunity-prioritizer.d.ts +37 -0
- package/dist/trust-signals-extractor.d.ts +28 -0
- package/package.json +1 -1
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 🛡️ Keyword Density Guard & Section Distribution Heatmap
|
|
3
|
+
* Ported & optimized from Python keyword_analyzer.py.
|
|
4
|
+
* Calculates exact keyword density, detects keyword stuffing risks (> 2.2%),
|
|
5
|
+
* and validates placement across Title, H1, First 100 Words, H2s, and FAQ.
|
|
6
|
+
*/
|
|
7
|
+
export interface KeywordPlacementCheck {
|
|
8
|
+
location: "title" | "h1" | "first_100_words" | "h2_headings" | "conclusion" | "faq";
|
|
9
|
+
present: boolean;
|
|
10
|
+
count: number;
|
|
11
|
+
}
|
|
12
|
+
export interface KeywordAnalysisReport {
|
|
13
|
+
keyword: string;
|
|
14
|
+
totalOccurrences: number;
|
|
15
|
+
totalWords: number;
|
|
16
|
+
densityPercent: number;
|
|
17
|
+
status: "too_low" | "optimal" | "stuffing_risk";
|
|
18
|
+
placements: KeywordPlacementCheck[];
|
|
19
|
+
consecutiveSentencesWithKeyword: number;
|
|
20
|
+
stuffingAlert: boolean;
|
|
21
|
+
recommendations: string[];
|
|
22
|
+
}
|
|
23
|
+
export declare class KeywordDensityGuard {
|
|
24
|
+
/**
|
|
25
|
+
* Analyzes keyword density and placement integrity.
|
|
26
|
+
*/
|
|
27
|
+
static audit(content: string, primaryKeyword: string, metaTitle?: string): KeywordAnalysisReport;
|
|
28
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 🎯 Search Intent Classifier & SERP Feature Intent Mapper
|
|
3
|
+
* Ported & optimized from Python search_intent_analyzer.py.
|
|
4
|
+
* Classifies queries as: Informational, Navigational, Transactional, or Commercial Investigation.
|
|
5
|
+
*/
|
|
6
|
+
export type QueryIntentClassification = "informational" | "navigational" | "transactional" | "commercial_investigation";
|
|
7
|
+
export interface SearchIntentResult {
|
|
8
|
+
primaryIntent: QueryIntentClassification;
|
|
9
|
+
confidenceScore: number;
|
|
10
|
+
scores: {
|
|
11
|
+
informational: number;
|
|
12
|
+
navigational: number;
|
|
13
|
+
transactional: number;
|
|
14
|
+
commercial_investigation: number;
|
|
15
|
+
};
|
|
16
|
+
detectedSignals: string[];
|
|
17
|
+
recommendedContentFormat: string;
|
|
18
|
+
}
|
|
19
|
+
export declare class SearchIntentClassifier {
|
|
20
|
+
private static readonly INFORMATIONAL_SIGNALS;
|
|
21
|
+
private static readonly NAVIGATIONAL_SIGNALS;
|
|
22
|
+
private static readonly TRANSACTIONAL_SIGNALS;
|
|
23
|
+
private static readonly COMMERCIAL_SIGNALS;
|
|
24
|
+
/**
|
|
25
|
+
* Classifies query intent in < 0.01ms.
|
|
26
|
+
*/
|
|
27
|
+
static classify(keyword: string, serpFeatures?: string[]): SearchIntentResult;
|
|
28
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 📈 Multi-Factor SEO Opportunity Prioritizer
|
|
3
|
+
* Ported & optimized from Python opportunity_scorer.py.
|
|
4
|
+
* Computes an 8-factor Opportunity Score (0-100) using real CTR curves & GSC ranking proximity.
|
|
5
|
+
*/
|
|
6
|
+
export type OpportunityArchetype = "quick_win" | "top_3_push" | "high_volume_gap" | "underperformer" | "declining";
|
|
7
|
+
export interface OpportunityInput {
|
|
8
|
+
keyword: string;
|
|
9
|
+
currentPosition?: number;
|
|
10
|
+
monthlyImpressions?: number;
|
|
11
|
+
monthlyClicks?: number;
|
|
12
|
+
actualCtr?: number;
|
|
13
|
+
searchVolume?: number;
|
|
14
|
+
difficulty?: number;
|
|
15
|
+
intent?: "informational" | "commercial_investigation" | "transactional" | "navigational";
|
|
16
|
+
}
|
|
17
|
+
export interface OpportunityScoreResult {
|
|
18
|
+
opportunityScore: number;
|
|
19
|
+
archetype: OpportunityArchetype;
|
|
20
|
+
estimatedClickGain: number;
|
|
21
|
+
factors: {
|
|
22
|
+
volumeScore: number;
|
|
23
|
+
positionScore: number;
|
|
24
|
+
intentScore: number;
|
|
25
|
+
competitionScore: number;
|
|
26
|
+
ctrImprovementScore: number;
|
|
27
|
+
};
|
|
28
|
+
priorityLevel: "critical" | "high" | "medium" | "low";
|
|
29
|
+
actionPlan: string;
|
|
30
|
+
}
|
|
31
|
+
export declare class SeoOpportunityPrioritizer {
|
|
32
|
+
private static readonly BENCHMARK_CTR;
|
|
33
|
+
/**
|
|
34
|
+
* Calculates comprehensive opportunity score for content prioritization.
|
|
35
|
+
*/
|
|
36
|
+
static evaluate(input: OpportunityInput): OpportunityScoreResult;
|
|
37
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 🛡️ Trust Signals & Social Proof Extractor
|
|
3
|
+
* Ported & optimized from Python trust_signal_analyzer.py.
|
|
4
|
+
* Extracts testimonials, customer numbers, percentage growth stats, risk reversals, and media mentions.
|
|
5
|
+
*/
|
|
6
|
+
export interface ExtractedTrustSignals {
|
|
7
|
+
totalSignalsCount: number;
|
|
8
|
+
testimonials: Array<{
|
|
9
|
+
quote: string;
|
|
10
|
+
author?: string;
|
|
11
|
+
}>;
|
|
12
|
+
socialProofCounts: string[];
|
|
13
|
+
specificResults: string[];
|
|
14
|
+
riskReversals: string[];
|
|
15
|
+
authorityMentions: string[];
|
|
16
|
+
trustScore: number;
|
|
17
|
+
isSufficientForConversion: boolean;
|
|
18
|
+
}
|
|
19
|
+
export declare class TrustSignalsExtractor {
|
|
20
|
+
private static readonly SOCIAL_PROOF_PATTERNS;
|
|
21
|
+
private static readonly RESULT_PATTERNS;
|
|
22
|
+
private static readonly RISK_REVERSAL_PATTERNS;
|
|
23
|
+
private static readonly AUTHORITY_PATTERNS;
|
|
24
|
+
/**
|
|
25
|
+
* Scans text or HTML and extracts all verifiable trust signals.
|
|
26
|
+
*/
|
|
27
|
+
static extract(content: string): ExtractedTrustSignals;
|
|
28
|
+
}
|