How to install navigation-menu-generator
npx skills add https://github.com/kostja94/marketing-skills --skill navigation-menu-generatorFull instructions (SKILL.md)
Source of truth, from kostja94/marketing-skills.
name: navigation-menu-generator description: When the user wants to design, optimize, or audit site navigation menus. Also use when the user mentions "navigation," "nav menu," "header menu," "site structure," "menu design," "navbar," "main menu," "mega menu," "dropdown menu," "mobile menu," or "hamburger menu." For breadcrumbs, use breadcrumb-generator. metadata: version: 1.0.1
Components: Navigation Menu
Guides navigation menu design for SEO, UX, and accessibility. Navigation helps users find content and signals site structure to search engines.
When invoking: On first use, if helpful, open with 1-2 sentences on what this skill covers and why it matters, then provide the main output. On subsequent use or when the user asks to skip, go directly to the main output.
Initial Assessment
Check for project context first: If .claude/project-context.md or .cursor/project-context.md exists, read it for key pages and audience.
Identify:
- Site structure: Main sections, hierarchy
- Primary goals: Conversion paths, key pages
- Platform: Web, mobile, both
Structure & Organization
Menu Size
- Primary nav: 7-9 items; avoid overwhelming users
- Sub-navigation: Up to 2 levels; deeper topics in sub-menus
- Pattern: Horizontal top nav or vertical side nav; avoid novel patterns
Hierarchy
- Reflect sitemap structure; need not match exactly
- Prioritize what visitors need most
- Logical grouping by topic or task
SEO Best Practices
| Practice | Purpose |
|---|---|
| Semantic HTML | <nav>, <ul>, <li>; proper landmark roles |
| Descriptive anchor text | Target keywords; avoid "Click here" |
| Text links | Prefer text over images; crawlers need readable links |
| Initial render | All nav HTML in first paint; no JS-only menus for critical links. See rendering-strategies |
| Visible links | Prefer visible over hidden; helps crawlers understand structure |
Crawlability
- Sub-menus: Ensure HTML is in DOM (e.g., CSS-hidden, not JS-injected)
- Footer nav: Include secondary links
- Breadcrumbs: See breadcrumb-generator for implementation
UX Guidelines
Visibility & Location
- Desktop: Visible nav; avoid hiding behind hamburger when space allows
- Expected placement: Primary nav in header; footer nav at bottom
- Current location: Indicate active page/section in menu
Accessibility
| Requirement | Practice |
|---|---|
| Labels | Clear, intuitive wording |
| Contrast | 4.5:1 for link text |
| Touch targets | >=44x44px; adequate spacing |
| Keyboard | Full keyboard navigation; focus visible |
| Screen readers | Proper ARIA; skip links for long menus |
Design
- Simple, clear; avoid covering entire screen with open menus on desktop
- Consistent across pages
- Mobile: Hamburger acceptable; ensure menu is usable when open
Output Format
- Structure (primary items, sub-items)
- Anchor text suggestions
- HTML/ARIA notes
- SEO checklist
- Accessibility checklist
Related Skills
- website-structure: Plan structure and nav hierarchy; nav reflects planned sections
- xml-sitemap: Nav should reflect discoverable pages
- internal-links: Nav is primary internal linking
- site-crawlability: Nav affects crawl paths
- category-page-generator: Category hierarchy in nav
- footer-generator: Footer nav complements header nav
- logo-generator: Logo typically sits in header with nav
- breadcrumb-generator: Breadcrumb navigation; BreadcrumbList schema
- rendering-strategies: Nav in first paint; no JS-only menus
Related skills
More from kostja94/marketing-skills and the wider catalog.

newsletter-signup-generator
When the user wants to design, optimize, or audit newsletter signup forms. Also use when the user mentions "newsletter," "email signup," "subscribe form," "email capture," "lead magnet," "newsletter form," "email opt-in," "subscribe CTA," "newsletter signup," or "email list building." For email strategy, use email-marketing.

open-graph
When the user wants to add or optimize Open Graph metadata for social sharing. Also use when the user mentions "Open Graph," "og:tags," "og:title," "og:image," "og:description," "Facebook preview," "LinkedIn preview," or "social share preview." For X (Twitter) link previews, use twitter-cards. For SERP title/description, use title-tag and meta-description.

open-source-strategy
When the user wants open source strategy, OSS commercialization, or open source growth. Also use when the user mentions "open source strategy," "OSS strategy," "open source commercialization," "open source to paid," "open core," "COSS," "commercial open source," "GitHub stars strategy," "DevHunt," "open source marketing," "open source growth," "Llama," "Dify," "Cursor," "open source business model," or "developer tools directory." For GitHub tactics, use github.

page-metadata
When the user wants to optimize meta tags other than title, description, Open Graph, or Twitter Cards. Also use when the user mentions "hreflang," "meta robots," "viewport," "charset," "canonical meta," "other meta tags," "meta robots noindex," "meta robots nofollow," "hreflang tags," "viewport meta," or "meta charset." For title tags, use title-tag. For meta descriptions, use meta-description. For Facebook/LinkedIn previews, use open-graph. For X previews, use twitter-cards.

paid-ads-strategy
When the user wants to plan paid ads strategy, allocate ad budget, or choose paid channels. Also use when the user mentions "paid ads," "paid media," "PPC," "SEM," "web ads," "app ads," "TV ads," "CTV," "OOH," "banner ads," "ad network," "ad alliance," "Taaft ads," "Shopify App Store ads," "Google Ads," "Meta Ads," "PMF testing," "PMF validation," "test product-market fit with ads," "ad spend," "ad budget," "ROAS," "paid acquisition," "Quality Score," or "ad-to-page alignment." For Google Ads execution, use google-ads. For Meta Ads execution, use meta-ads. For landing page alignment, use landing-page-generator.

parasite-seo
When the user wants to choose or execute third-party platform SEO (high-authority sites for rankings or backlinks). Also use when the user mentions "parasite SEO," "parasitic SEO," "barnacle SEO," "hosted content," "third-party publishing," "Medium SEO," "Reddit SEO," "GitHub parasite SEO," "LinkedIn Pulse SEO," "high-authority platforms," "distributed authority," "borrow domain authority," or "rank without own website." For GitHub-specific playbooks, use github. For Medium.com posts, use medium-posts. For Grokipedia, use grokipedia-recommendations. For AI answer-engine visibility (not platform selection), use generative-engine-optimization.