From 1688b235a24f71c59a90bedf01147c6a8972cd56 Mon Sep 17 00:00:00 2001 From: David Moore Date: Wed, 17 Sep 2025 11:39:47 +1000 Subject: [PATCH] docs: hide comparison docs from indexing --- docs/contentlayer.config.ts | 4 ++++ docs/docs/misc/comparison/ampt.mdx | 1 + docs/docs/misc/comparison/aws-cdk.mdx | 1 + docs/docs/misc/comparison/aws-sam.mdx | 1 + docs/docs/misc/comparison/bicep.mdx | 1 + docs/docs/misc/comparison/encore.mdx | 1 + .../misc/comparison/gcp-deployment-manager.mdx | 1 + docs/docs/misc/comparison/pulumi.mdx | 1 + docs/docs/misc/comparison/sst.mdx | 1 + docs/docs/misc/comparison/terraform.mdx | 1 + docs/src/app/(sitemaps)/sitemap-0.xml/route.ts | 14 ++++++++------ docs/src/app/[[...slug]]/page.tsx | 6 ++++++ docs/src/app/robots.ts | 11 +++++++---- 13 files changed, 34 insertions(+), 10 deletions(-) diff --git a/docs/contentlayer.config.ts b/docs/contentlayer.config.ts index e712aaa0c..9eff6922c 100644 --- a/docs/contentlayer.config.ts +++ b/docs/contentlayer.config.ts @@ -39,6 +39,10 @@ const baseFields: FieldDefs = { type: 'string', description: 'The canonical url of the doc, if different from the url', }, + noindex: { + type: 'boolean', + description: 'Prevent search engines from indexing this page', + }, } const computedFields: ComputedFields = { diff --git a/docs/docs/misc/comparison/ampt.mdx b/docs/docs/misc/comparison/ampt.mdx index c07fb2036..6219202c8 100644 --- a/docs/docs/misc/comparison/ampt.mdx +++ b/docs/docs/misc/comparison/ampt.mdx @@ -1,5 +1,6 @@ --- description: 'Comparison to Ampt' +noindex: true --- # Ampt vs. Nitric diff --git a/docs/docs/misc/comparison/aws-cdk.mdx b/docs/docs/misc/comparison/aws-cdk.mdx index 10f957a7d..a3a80793e 100644 --- a/docs/docs/misc/comparison/aws-cdk.mdx +++ b/docs/docs/misc/comparison/aws-cdk.mdx @@ -1,5 +1,6 @@ --- description: 'Comparison to AWS CDK' +noindex: true --- # AWS CDK vs. Nitric diff --git a/docs/docs/misc/comparison/aws-sam.mdx b/docs/docs/misc/comparison/aws-sam.mdx index 9c8e7633b..df7007abf 100644 --- a/docs/docs/misc/comparison/aws-sam.mdx +++ b/docs/docs/misc/comparison/aws-sam.mdx @@ -1,5 +1,6 @@ --- description: 'Comparison to AWS Serverless Application Model (SAM)' +noindex: true --- # AWS SAM vs. Nitric diff --git a/docs/docs/misc/comparison/bicep.mdx b/docs/docs/misc/comparison/bicep.mdx index 8c2b103c3..665643ad7 100644 --- a/docs/docs/misc/comparison/bicep.mdx +++ b/docs/docs/misc/comparison/bicep.mdx @@ -1,5 +1,6 @@ --- description: 'Comparison to Bicep' +noindex: true --- # Bicep vs. Nitric diff --git a/docs/docs/misc/comparison/encore.mdx b/docs/docs/misc/comparison/encore.mdx index 3b2f7c6e0..d4cc8c30f 100644 --- a/docs/docs/misc/comparison/encore.mdx +++ b/docs/docs/misc/comparison/encore.mdx @@ -1,5 +1,6 @@ --- description: 'Comparison to Encore' +noindex: true --- # Encore vs. Nitric diff --git a/docs/docs/misc/comparison/gcp-deployment-manager.mdx b/docs/docs/misc/comparison/gcp-deployment-manager.mdx index 7cc6016ac..5089d4271 100644 --- a/docs/docs/misc/comparison/gcp-deployment-manager.mdx +++ b/docs/docs/misc/comparison/gcp-deployment-manager.mdx @@ -1,5 +1,6 @@ --- description: 'Comparison to Google Cloud Deployment Manager' +noindex: true --- # Google Cloud Deployment Manager vs. Nitric diff --git a/docs/docs/misc/comparison/pulumi.mdx b/docs/docs/misc/comparison/pulumi.mdx index 44b93330c..7378de6eb 100644 --- a/docs/docs/misc/comparison/pulumi.mdx +++ b/docs/docs/misc/comparison/pulumi.mdx @@ -1,5 +1,6 @@ --- description: 'Comparison to Pulumi' +noindex: true --- # Pulumi vs. Nitric diff --git a/docs/docs/misc/comparison/sst.mdx b/docs/docs/misc/comparison/sst.mdx index 4f0199e13..1c33038c8 100644 --- a/docs/docs/misc/comparison/sst.mdx +++ b/docs/docs/misc/comparison/sst.mdx @@ -1,5 +1,6 @@ --- description: 'Comparison to SST' +noindex: true --- # SST vs. Nitric diff --git a/docs/docs/misc/comparison/terraform.mdx b/docs/docs/misc/comparison/terraform.mdx index e4559e883..519c9103d 100644 --- a/docs/docs/misc/comparison/terraform.mdx +++ b/docs/docs/misc/comparison/terraform.mdx @@ -1,5 +1,6 @@ --- description: 'Comparison to Terraform' +noindex: true --- # Terraform vs. Nitric diff --git a/docs/src/app/(sitemaps)/sitemap-0.xml/route.ts b/docs/src/app/(sitemaps)/sitemap-0.xml/route.ts index a6d7dd19c..150fd0706 100644 --- a/docs/src/app/(sitemaps)/sitemap-0.xml/route.ts +++ b/docs/src/app/(sitemaps)/sitemap-0.xml/route.ts @@ -22,12 +22,14 @@ export async function GET() { priority: 0.7, })) - const docPages: SitemapItem[] = allDocuments.map((page) => ({ - loc: page.slug === '' ? URL : `${URL}/${page.slug}`, - lastmod: new Date(page.lastModified).toISOString(), - changefreq: 'daily', - priority: 0.7, - })) + const docPages: SitemapItem[] = allDocuments + .filter((page) => !page.slug.startsWith('misc/comparison/')) + .map((page) => ({ + loc: page.slug === '' ? URL : `${URL}/${page.slug}`, + lastmod: new Date(page.lastModified).toISOString(), + changefreq: 'daily', + priority: 0.7, + })) const allPagesSorted = [...pages, ...docPages].sort((a, b) => a.loc < b.loc ? -1 : 1, diff --git a/docs/src/app/[[...slug]]/page.tsx b/docs/src/app/[[...slug]]/page.tsx index d63842ca4..af328e3e8 100644 --- a/docs/src/app/[[...slug]]/page.tsx +++ b/docs/src/app/[[...slug]]/page.tsx @@ -72,6 +72,12 @@ export async function generateMetadata({ alternates: { canonical: doc.canonical_url ? doc.canonical_url : url, }, + ...(doc.noindex && { + robots: { + index: false, + follow: false, + }, + }), } } diff --git a/docs/src/app/robots.ts b/docs/src/app/robots.ts index 7c00dc7b7..e388b00b9 100644 --- a/docs/src/app/robots.ts +++ b/docs/src/app/robots.ts @@ -13,10 +13,13 @@ export default function robots(): MetadataRoute.Robots { // production robots.txt return { - rules: { - userAgent: '*', - allow: '/', - }, + rules: [ + { + userAgent: '*', + allow: '/', + disallow: '/misc/comparison/', + }, + ], host: 'https://nitric.io/docs', sitemap: 'https://nitric.io/docs/sitemap.xml', }