SEO & Social Cards

Optimize your site for search engines and create beautiful social media embeds.

○What This Controls
These settings affect how your site appears in Google search results, Discord embeds, Twitter cards, and Facebook shares.

Basic SEO

src/config/site.config.ts
seo: {
  // Browser tab title
  title: 'MyServer - Premium Minecraft Server',
  
  // Search result description (keep under 160 characters)
  description: 'Join MyServer for the best Minecraft experience...',
  
  // Keywords for search engines
  keywords: 'minecraft server, survival, skyblock, pvp',
  
  // Your website URL
  siteUrl: 'https://myserver.net',
  
  // Favicon
  favicon: '/favicon.png',
}
OptionDescriptionBest Practice
titleBrowser tab & search resultsInclude server name + keywords, 50-60 chars
descriptionSearch result snippetCompelling summary, 150-160 characters
keywordsSEO keywordsComma-separated, relevant terms
siteUrlCanonical URLFull URL with https://
faviconBrowser icon32x32 or 64x64 ICO/PNG

Open Graph (Discord & Facebook)

Open Graph controls how your site looks when shared on Discord, Facebook, LinkedIn, and other platforms.

seo: {
  // ... basic settings
  
  openGraph: {
    // Large preview image (1200x630 recommended)
    image: '/og-image.png',
    // Site name in embeds
    siteName: 'MyServer',
    // Content type
    type: 'website',
  },
}

OG Image Guidelines

  • Size: 1200x630 pixels (1.91:1 ratio)
  • Format: PNG or JPG
  • Include your logo and server name
  • Use eye-catching visuals
  • Keep text readable at small sizes
  • File size: under 1MB
△Discord Embeds
Discord caches images aggressively. If you update your OG image, add a query string like /og-image.png?v=2 to force a refresh.

Twitter Cards

Configure how your site appears when shared on Twitter/X.

seo: {
  // ... other settings
  
  twitter: {
    // 'summary_large_image' = large preview
    // 'summary' = small square image
    card: 'summary_large_image',
    
    // Twitter image (can reuse OG image)
    image: '/og-image.png',
    
    // Your Twitter handle (without @)
    site: 'myserver',
    
    // Creator handle (without @)
    creator: 'serverowner',
  },
}
Card TypeImage SizeBest For
summary_large_image1200x630Most websites, announcements
summary144x144 (min)Simple shares, less prominent

Additional Settings

seo: {
  // ... other settings
  
  // Browser theme color (mobile address bar)
  themeColor: '#8b5cf6',
  
  // Search engine directives
  robots: 'index, follow',
}
OptionDescription
themeColorColors the browser UI on mobile (use hex)
robotsTell search engines how to index your site

Robots Options

  • "index, follow" - Allow indexing and link following (default)
  • "noindex, follow" - Don't index but follow links
  • "index, nofollow" - Index but don't follow links
  • "noindex, nofollow" - Don't index or follow

Complete Example

seo: {
  title: 'NexusCraft - Premium Minecraft Server',
  description: 'Join 10,000+ players on NexusCraft. Custom game modes, active community, and 24/7 uptime.',
  keywords: 'minecraft, server, survival, skyblock, factions, pvp, gaming',
  siteUrl: 'https://nexuscraft.net',
  favicon: '/favicon.png',
  
  openGraph: {
    image: '/og-image.png',
    siteName: 'NexusCraft',
    type: 'website',
  },
  
  twitter: {
    card: 'summary_large_image',
    image: '/og-image.png',
    site: 'nexuscraft',
    creator: '',
  },
  
  themeColor: '#8b5cf6',
  robots: 'index, follow',
}

Testing Your Setup

  • Facebook: Use the Facebook Sharing Debugger
  • Twitter: Use Twitter Card Validator
  • Discord: Paste your URL in a chat
  • Google: Search for "site:yourdomain.com"
  • General: Use opengraph.xyz to preview all platforms