Skip to content

Enhance VitePress docs with SEO metadata for better discoverability #2996

Description

@waynesun09

Summary

The VitePress documentation site at https://fullsend.sh/docs would benefit from additional SEO metadata to improve search engine indexing, social media sharing, and content discoverability.

Enhancement Opportunities

Social Sharing

  • Open Graph tags - Add og:title, og:description, og:image, og:url for rich previews on LinkedIn, Facebook, Slack
  • Twitter Cards - Add twitter:card, twitter:title, twitter:description, twitter:image for better Twitter/X sharing

Search Engine Optimization

  • Canonical URLs - Add <link rel="canonical"> tags to establish preferred URLs
  • Sitemap.xml - Generate proper XML sitemap for efficient crawling (currently returns HTML)
  • Structured data - Add JSON-LD schema markup for documentation, breadcrumbs, and software application metadata
  • Per-page descriptions - Use unique meta descriptions instead of the same "Autonomous SDLC agents for your codebase" across all pages

Nice-to-Have

  • Explicit robots meta tags for per-page crawl control
  • Rich snippets support via schema.org markup

Current State ✅

The docs already have good foundations:

  • Basic meta descriptions
  • Page-specific title tags
  • Proper robots.txt with search signals (search=yes)
  • Strong internal linking (203 links)
  • Clean URL structure
  • Search indexing enabled

Implementation

VitePress has built-in SEO support. Example website/.vitepress/config.ts:

export default defineConfig({
  // Global head tags
  head: [
    ['meta', { property: 'og:type', content: 'website' }],
    ['meta', { property: 'og:site_name', content: 'Fullsend' }],
    ['meta', { name: 'twitter:card', content: 'summary_large_image' }],
  ],
  
  // Sitemap generation
  sitemap: {
    hostname: 'https://fullsend.sh'
  },
  
  // Per-page canonical and OG tags
  transformHead({ pageData }) {
    const url = `https://fullsend.sh${pageData.relativePath.replace(/\.md$/, '.html')}`
    return [
      ['link', { rel: 'canonical', href: url }],
      ['meta', { property: 'og:url', content: url }],
      ['meta', { property: 'og:title', content: pageData.title }],
      ['meta', { property: 'og:description', content: pageData.description }],
    ]
  }
})

Add unique descriptions via frontmatter:

---
title: Getting Started
description: Install and configure Fullsend autonomous agents for your repository
---

Testing Tools

References

Metadata

Metadata

Assignees

No one assigned

    Labels

    component/docsUser-facing documentationfeatureFeature-category issue awaiting human prioritizationgood first issueGood for newcomerspriority/lowNice to have, address when convenienttriagedTriaged but awaiting human prioritizationtype/featureNew capability request

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    Status
    Todo

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions