update: improve SEO - absolute OG image URLs, add sitemap and robots.txt

- Use absolute URLs for OG/Twitter images (required by LinkedIn, WhatsApp)
- Add image type and descriptive alt text for OG image
- Add robots.txt allowing all crawlers
- Add dynamic sitemap.xml with all public pages

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Jeff Emmett 2026-03-06 14:49:59 -08:00
parent e1673e9205
commit 28f1c6bb81
3 changed files with 30 additions and 3 deletions

View File

@ -28,10 +28,11 @@ export const metadata: Metadata = {
siteName: "Crypto Commons Gathering",
images: [
{
url: "/og-image.jpg",
url: "https://cryptocommonsgather.ing/og-image.jpg",
width: 1200,
height: 630,
alt: "Crypto Commons Gathering 2026 - Austrian Alps",
alt: "Commons Hub in Austria's Höllental Valley with yellow tulips in foreground",
type: "image/jpeg",
},
],
locale: "en_US",
@ -42,7 +43,14 @@ export const metadata: Metadata = {
title: "Crypto Commons Gathering 2026 | CCG",
description:
"The sixth annual hack-ademic confluence of commons praxis and the latest cryptographic technologies in the Austrian Alps. August 16-23, 2026.",
images: ["/og-image.jpg"],
images: [
{
url: "https://cryptocommonsgather.ing/og-image.jpg",
width: 1200,
height: 630,
alt: "Commons Hub in Austria's Höllental Valley with yellow tulips in foreground",
},
],
},
}

15
app/sitemap.ts Normal file
View File

@ -0,0 +1,15 @@
import type { MetadataRoute } from "next"
export default function sitemap(): MetadataRoute.Sitemap {
const baseUrl = "https://cryptocommonsgather.ing"
return [
{ url: baseUrl, lastModified: new Date(), changeFrequency: "weekly", priority: 1.0 },
{ url: `${baseUrl}/register`, lastModified: new Date(), changeFrequency: "weekly", priority: 0.9 },
{ url: `${baseUrl}/about`, lastModified: new Date(), changeFrequency: "monthly", priority: 0.8 },
{ url: `${baseUrl}/directions`, lastModified: new Date(), changeFrequency: "monthly", priority: 0.7 },
{ url: `${baseUrl}/transparency`, lastModified: new Date(), changeFrequency: "monthly", priority: 0.6 },
{ url: `${baseUrl}/gallery`, lastModified: new Date(), changeFrequency: "monthly", priority: 0.6 },
{ url: `${baseUrl}/sponsorships`, lastModified: new Date(), changeFrequency: "monthly", priority: 0.5 },
]
}

4
public/robots.txt Normal file
View File

@ -0,0 +1,4 @@
User-agent: *
Allow: /
Sitemap: https://cryptocommonsgather.ing/sitemap.xml