34 lines
1.5 KiB
TypeScript
34 lines
1.5 KiB
TypeScript
import type { MetadataRoute } from "next";
|
|
|
|
const SITE = process.env.NEXT_PUBLIC_SITE_URL || "https://nomadweb.nomadro.com";
|
|
const DESTINATIONS = ["bali", "lisbon", "chiangmai", "mexico", "barcelona", "tokyo"];
|
|
const BLOGS = ["chiangmai-guide-2026", "portugal-d7-visa", "nomad-tax-basics"];
|
|
|
|
export default function sitemap(): MetadataRoute.Sitemap {
|
|
const now = new Date();
|
|
|
|
return [
|
|
{ url: SITE, lastModified: now, changeFrequency: "weekly", priority: 1 },
|
|
{ url: `${SITE}/plan`, lastModified: now, changeFrequency: "weekly", priority: 0.95 },
|
|
{ url: `${SITE}/compare`, lastModified: now, changeFrequency: "weekly", priority: 0.9 },
|
|
{ url: `${SITE}/tools`, lastModified: now, changeFrequency: "weekly", priority: 0.8 },
|
|
{ url: `${SITE}/login`, lastModified: now, changeFrequency: "monthly", priority: 0.5 },
|
|
{ url: `${SITE}/privacy`, lastModified: now, changeFrequency: "yearly", priority: 0.3 },
|
|
{ url: `${SITE}/about`, lastModified: now, changeFrequency: "monthly", priority: 0.5 },
|
|
{ url: `${SITE}/changelog`, lastModified: now, changeFrequency: "weekly", priority: 0.4 },
|
|
{ url: `${SITE}/profile`, lastModified: now, changeFrequency: "monthly", priority: 0.4 },
|
|
...DESTINATIONS.map((slug) => ({
|
|
url: `${SITE}/destinations/${slug}`,
|
|
lastModified: now,
|
|
changeFrequency: "weekly" as const,
|
|
priority: 0.8,
|
|
})),
|
|
...BLOGS.map((slug) => ({
|
|
url: `${SITE}/blog/${slug}`,
|
|
lastModified: now,
|
|
changeFrequency: "monthly" as const,
|
|
priority: 0.7,
|
|
})),
|
|
];
|
|
}
|