seo-review
Perform a focused SEO audit on JavaScript concept pages to maximize search visibility, featured snippet optimization, and ranking potential
By leonardomso · 635 installs
npx skills add leonardomso/33-js-concepts --skill seo-review
Source repository · Upstream listing
Skill: SEO Audit for Concept Pages
Use this skill to perform a focused SEO audit on concept documentation pages for the 33 JavaScript Concepts project. The goal is to maximize search visibility for JavaScript developers.
When to Use
Before publishing a new concept page
When optimizing underperforming pages
Periodic content audits
After major content updates
When targeting new keywords
Goal
Each concept page should rank for searches like:
"what is [concept] in JavaScript"
"how does [concept] work in JavaScript"
"[concept] JavaScript explained"
"[concept] JavaScript tutorial"
"[concept] JavaScript example"
SEO Audit Methodology
Follow these five steps for a complete SEO audit.
Step 1: Identify Target Keywords
Before auditing, identify the keyword cluster for the concept.
Keyword Cluster Template
Type Pattern Example (Closures)
Primary [concept] JavaScript closures JavaScript
What is what is [concept] in JavaScript what is a closure in JavaScript
How does how does [concept] work how do closures work
How to how to use/create [concept] how to use closures
Why why use [concept] why use closures JavaScript
Examples [concept] examples closure examples JavaScript
vs [concept] vs [related] closures vs scope
Interview [concept] interview questions closure interview questions
Step 2: On Page SEO Audit
Check all on page SEO elements systematically.
Step 3: Featured Snippet Optimization
Verify content is structured to win featured snippets.
Step 4: Internal Linking Audit
Check the internal link structure.
Step 5: Generate Report
Document findings using the report template.
Keyword Clusters by Concept
Use these pre built keyword clusters for each concept.
<AccordionGroup
<Accordion title="Call Stack"
Type Keywords
Primary JavaScript call stack, call stack JavaScript
What is what is the call stack in JavaScript
How does how does the call stack work
Error maximum call stack size exceeded, stack overflow JavaScript
Visual call stack visualization, call stack explained
Interview call stack interview questions JavaScript
</Accordion
<Accordion title="Primitive Types"
Type Keywords
Primary JavaScript primitive types, primitives in JavaScript
What are what are primitive types in JavaScript
List JavaScript data types, types in JavaScript
vs primitives vs objects JavaScript
typeof typeof JavaScript, JavaScript typeof operator
Interview JavaScript types interview questions
</Accordion
<Accordion title="Value vs Reference Types"
Type Keywords
Primary JavaScript value vs reference, pass by reference JavaScript
What is what is pass by value in JavaScript
How does how does JavaScript pass objects
Comparison value types vs reference types JavaScript
Copy how to copy objects JavaScript, deep copy JavaScript
</Accordion
<Accordion title="Type Coercion"
Type Keywords
Primary JavaScript type coercion, type conversion JavaScript
What is what is type coercion in JavaScript
How does how does type coercion work
Implicit implicit type conversion JavaScript
Explicit explicit type conversion JavaScript
Interview type coercion interview questions
</Accordion
<Accordion title="Equality Operators"
Type Keywords
Primary JavaScript equality, == vs === JavaScript
What is what is the difference between == and ===
Comparison loose equality vs strict equality JavaScript
Best practice when to use == vs ===
Interview JavaScript equality interview questions
</Accordion
<Accordion title="Scope and Closures"
Type Keywords
Primary JavaScript closures, JavaScript scope
What is what is a closure in JavaScript, what is scope
How does how do closures work, how does scope work
Types types of scope JavaScript, lexical scope
Use cases closure use cases, why use closures
Interview closure interview questions JavaScript
</Accordion
<Accordion title="Event Loop"
Type Keywords
Primary JavaScript event loop, event loop JavaScript
What is what is the event loop in JavaScript
How does how does the event loop work
Visual event loop visualization, event loop explained
Related call stack event loop, task queue JavaScript
Interview event loop interview questions
</Accordion
<Accordion title="Promises"
Type Keywords
Primary JavaScript Promises, Promises in JavaScript
What is what is a Promise in JavaScript
How to how to use Promises, how to chain Promises
Methods Promise.all, Promise.race, Promise.allSettled
Error Promise error handling, Promise catch
vs Promises vs callbacks, Promises vs async await
</Accordion
<Accordion title="async/await"
Type Keywords
Primary JavaScript async await, async await JavaScript
What is what is async await in JavaScript
How to how to use async await, async await tutorial
Error async await error handling, try catch async
vs async await vs Promises
Interview async await interview questions
</Accordion
<Accordion title="this Keyword"
Type Keywords
Primary JavaScript this keyword, this in JavaScript
What is what is this in JavaScript
How does how does this work in JavaScript
Binding call apply bind JavaScript, this binding
Arrow this in arrow functions
Interview this keyword interview questions
</Accordion
<Accordion title="Prototypes"
Type Keywords
Primary JavaScript prototype, prototype chain JavaScript
What is what is a prototype in JavaScript
How does how does prototype inheritance work
Chain prototype chain explained
vs prototype vs class JavaScript
Interview prototype interview questions JavaScript
</Accordion
<Accordion title="DOM"
Type Keywords
Primary JavaScript DOM, DOM manipulation JavaScript
What is what is the DOM in JavaScript
How to how to manipulate DOM JavaScript
Methods getElementById, querySelector JavaScript
Events DOM events JavaScript, event listeners
Performance DOM performance, virtual DOM vs DOM
</Accordion
<Accordion title="Higher Order Functions"
Type Keywords
Primary JavaScript higher order functions, higher order functions
What are what are higher order functions
Examples map filter reduce JavaScript
How to how to use higher order functions
Interview higher order functions interview
</Accordion
<Accordion title="Recursion"
Type Keywords
Primary JavaScript recursion, recursion in JavaScript
What is what is recursion in JavaScript
How to how to write recursive functions
Examples recursion examples JavaScript
vs recursion vs iteration JavaScript
Interview recursion interview questions
</Accordion
</AccordionGroup
Audit Checklists
Title Tag Checklist (4 points)
Check Points How to Verify
1 Length 50 60 characters 1 Count characters in title frontmatter
2 Primary keyword in first half 1 Concept name appears early
3 Ends with "in JavaScript" 1 Check title ending
4 Contains compelling hook 1 Promises value/benefit to reader
Scoring:
4/4: ✅ Excellent
3/4: ⚠️ Good, minor improvements possible
0 2/4: ❌ Needs significant work
Title Formula:
Good Examples:
Concept Title (with character count)
Closures "Closures: How Functions Remember Their Scope in JavaScript" (58 chars)
Event Loop "Event Loop: How Async Code Actually Runs in JavaScript" (54 chars)
Promises "Promises: Handling Async Operations in JavaScript" (49 chars)
DOM "DOM: How Browsers Represent Web Pages in JavaScript" (51 chars)
Bad Examples:
Issue Bad Title Better Title
Too short "Closures" "Closures: How Functions Remember Their Scope in JavaScript"
Too long "Understanding JavaScript Closures and How They Work with Examples" (66 chars) "Closures: How Functions Remember Their Scope in JavaScript" (58 chars)
No hook "JavaScript Closures" "Closures: How Functions Remember Their Scope in JavaScript"
Missing "JavaScript" "Understanding Closures and Scope" Add "in JavaScript" at end
Meta Description Checklist (4 points)
Check Points How to Verify
1 Length 150 160 characters 1 Count characters in description frontmatter
2 Starts with action word 1 "Learn", "Understand", "Discover" (NOT "Master")
3 Contains primary keyword 1 Concept name + "JavaScript" present
4 Promises specific value 1 Lists what reader will learn
Description Formula:
Good Examples:
Concept Description
Closures "Learn JavaScript closures and how functions remember their scope. Covers lexical scoping, practical use cases, memory considerations, and common closure patterns." (159 chars)
Event Loop "Discover how the JavaScript event loop manages async code execution. Understand the call stack, task queue, microtasks, and why JavaScript is single threaded but non blocking." (176 chars trim!)
DOM "Learn how the DOM works in JavaScript. Understand how browsers represent HTML as a tree, select and manipulate elements, traverse nodes, and optimize rendering." (162 chars)
Bad Examples:
Issue Bad Description Fix
Too short "Learn about closures" Expand to 150 160 chars with specifics
Starts with "Master" "Master JavaScript closures..." "Learn JavaScript closures..."
Too vague "A guide to closures" List specific topics covered
Missing keyword "Functions can remember things" Include "closures" and "JavaScript"
Keyword Placement Checklist (5 points)
Check Points How to Verify
1 Primary keyword in title 1 Check frontmatter title
2 Primary keyword in meta description 1 Check frontmatter description
3 Primary keyword in first 100 words 1 Check opening paragraphs
4 Keyword in at least one H2 heading 1 Scan all headings
5 No keyword stuffing 1 Content reads naturally
Keyword Placement Map:
Content Structure Checklist (6 points)
Check Points How to Verify
1 Opens with question hook 1 First paragraph asks engaging question
2 Code example in first 200 words 1 Simple example appears early
3 "What you'll learn" Info box 1 <Info component after opening
4 Short paragraphs (2 4 sentences) 1 Scan content for long blocks
5 1,500+ words 1 Word count check
6 Key terms bolded on first mention 1 Important terms use bold
Content Structure Template:
Featured Snippet Checklist (4 points)
Check Points How to Verify
1 "What is X" has 40 60 word definition 1 Count words in first paragraph after "What is" H2
2 At least one H2 is phrased as question 1 Check for "What is", "How does", "Why" H2s
3 Numbered steps for "How to" content 1 Uses <Steps component or numbered list
4 Comparison tables (if applicable) 1 Tables for "X vs Y" content
Featured Snippet Patterns:
javascript │
│