Production ready

This commit is contained in:
2026-02-09 22:31:22 +01:00
parent fd6e7c44e1
commit 7814548e11
82 changed files with 3390 additions and 2026 deletions

34
frontend/app/sitemap.ts Normal file
View File

@@ -0,0 +1,34 @@
import { MetadataRoute } from 'next'
const BASE_URL = process.env.NEXT_PUBLIC_SITE_URL ?? 'https://sitechangemonitor.com'
export default function sitemap(): MetadataRoute.Sitemap {
const now = new Date()
const staticPages = [
{ url: `${BASE_URL}/`, changeFrequency: 'weekly' as const, priority: 1.0 },
{ url: `${BASE_URL}/blog`, changeFrequency: 'weekly' as const, priority: 0.7 },
{ url: `${BASE_URL}/privacy`, changeFrequency: 'yearly' as const, priority: 0.3 },
{ url: `${BASE_URL}/features`, changeFrequency: 'monthly' as const, priority: 0.9 },
{ url: `${BASE_URL}/use-cases`, changeFrequency: 'monthly' as const, priority: 0.9 },
]
const featureSlugs = ['noise-filtering', 'visual-diff', 'keyword-monitoring', 'seo-ranking', 'multi-channel-alerts']
const featurePages = featureSlugs.map((slug) => ({
url: `${BASE_URL}/features/${slug}`,
changeFrequency: 'monthly' as const,
priority: 0.8,
}))
const useCaseSlugs = ['ecommerce-price-monitoring', 'seo-serp-tracking', 'compliance-policy-monitoring', 'competitor-intelligence']
const useCasePages = useCaseSlugs.map((slug) => ({
url: `${BASE_URL}/use-cases/${slug}`,
changeFrequency: 'monthly' as const,
priority: 0.8,
}))
return [...staticPages, ...featurePages, ...useCasePages].map((page) => ({
...page,
lastModified: now,
}))
}