Adds dynamic case study and curriculo routes, project health monitoring for live demo status, and strengthens local SEO (structured data, service-area targeting for Garuva/Joinville/Curitiba, a dedicated "criação de sites" service page) so search results better match the professional title (Engenheiro da Computação) and experience (5 anos). Co-Authored-By: Claude Sonnet 5 <[email protected]>
46 lines
1.1 KiB
TypeScript
46 lines
1.1 KiB
TypeScript
import { MetadataRoute } from "next";
|
|
import { caseStudies, servicePages, siteUrl } from "@/lib/site-content";
|
|
|
|
export default function sitemap(): MetadataRoute.Sitemap {
|
|
const now = new Date();
|
|
|
|
return [
|
|
{
|
|
url: siteUrl,
|
|
lastModified: now,
|
|
changeFrequency: "weekly",
|
|
priority: 1.0,
|
|
},
|
|
{
|
|
url: `${siteUrl}/curriculo`,
|
|
lastModified: now,
|
|
changeFrequency: "monthly",
|
|
priority: 0.95,
|
|
},
|
|
{
|
|
url: `${siteUrl}/servicos`,
|
|
lastModified: now,
|
|
changeFrequency: "monthly",
|
|
priority: 0.9,
|
|
},
|
|
{
|
|
url: `${siteUrl}/cases`,
|
|
lastModified: now,
|
|
changeFrequency: "monthly",
|
|
priority: 0.9,
|
|
},
|
|
...servicePages.map((service) => ({
|
|
url: `${siteUrl}/servicos/${service.slug}`,
|
|
lastModified: now,
|
|
changeFrequency: "monthly" as const,
|
|
priority: 0.8,
|
|
})),
|
|
...caseStudies.map((caseStudy) => ({
|
|
url: `${siteUrl}/cases/${caseStudy.id}`,
|
|
lastModified: now,
|
|
changeFrequency: "monthly" as const,
|
|
priority: 0.75,
|
|
})),
|
|
];
|
|
}
|