From 135c260189c24d20dc675cf170adacae6ea45b00 Mon Sep 17 00:00:00 2001 From: Rui Saraiva Date: Sun, 26 Jul 2026 14:39:13 +0100 Subject: [PATCH] feat(seo): add a canonical link and a sitemap MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit favycon.app has no DNS records at all, so favycon.vercel.app is the only hostname this site answers on and the canonical is unambiguous. It uses the SITE_URL constant, so it cannot disagree with og:url. The sitemap is a single static URL. Its loc is written without a trailing slash to match the canonical string exactly — the two forms are the same URL per RFC 3986, but nothing here forces them to differ, so they don't. No lastmod: a hand-maintained file would claim a freshness it can't know. robots.txt gains the Sitemap line and a note that /api/favycon is POST-only and answers a GET with 405. It stays out of the disallow list deliberately: a 405 tells a crawler more than a rule it has to fetch robots.txt to find. --- components/seo/index.tsx | 2 ++ public/robots.txt | 8 +++++++- public/sitemap.xml | 6 ++++++ 3 files changed, 15 insertions(+), 1 deletion(-) create mode 100644 public/sitemap.xml diff --git a/components/seo/index.tsx b/components/seo/index.tsx index 11b76f0..c0d0141 100644 --- a/components/seo/index.tsx +++ b/components/seo/index.tsx @@ -42,6 +42,8 @@ const SEO = ({ title, description }: SEOProps) => { + {/* favycon.app has no DNS, so vercel.app is the only hostname this answers on. */} + diff --git a/public/robots.txt b/public/robots.txt index 26b4d70..c6f7a71 100644 --- a/public/robots.txt +++ b/public/robots.txt @@ -1,2 +1,8 @@ User-Agent: * -Allow: / \ No newline at end of file +Allow: / + +# Nothing is disallowed. /api/favycon is POST-only and answers a GET with 405, +# which is a clearer signal to a crawler than a rule it has to fetch robots.txt +# to learn. A plain-text description of the tool lives at /llms.txt + +Sitemap: https://favycon.vercel.app/sitemap.xml diff --git a/public/sitemap.xml b/public/sitemap.xml new file mode 100644 index 0000000..71de8ed --- /dev/null +++ b/public/sitemap.xml @@ -0,0 +1,6 @@ + + + + https://favycon.vercel.app + +