From 0bcfbde617b1a9e6503c4fc5c688c9192f5679a9 Mon Sep 17 00:00:00 2001 From: David Montero Date: Fri, 29 May 2026 17:21:41 +0200 Subject: [PATCH] feat(seo+landing): /classroom in footer + seoRoutes for sitemap inclusion MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit LandingPage footer gains a "For schools" link sitting between Pricing and About — gives institutional visitors a discoverable path to the Classroom landing without burying it inside the FAQ. seoRoutes.ts adds the /classroom entry (priority 0.85, monthly changefreq) so the auto-generated sitemap picks it up on every build. Bonus: getSeoMeta('/classroom') now returns the institutional title + description if any other code wants to read it programmatically. The static public/sitemap.xml is not committed — `npm run generate:sitemap` overwrites it during the Docker build, so any hand-edit would be wiped. Co-Authored-By: Claude Opus 4.7 --- frontend/src/pages/LandingPage.tsx | 1 + frontend/src/seoRoutes.ts | 13 +++++++++++++ 2 files changed, 14 insertions(+) diff --git a/frontend/src/pages/LandingPage.tsx b/frontend/src/pages/LandingPage.tsx index b4a40b89..9b48963c 100644 --- a/frontend/src/pages/LandingPage.tsx +++ b/frontend/src/pages/LandingPage.tsx @@ -1238,6 +1238,7 @@ export const LandingPage: React.FC = () => { {t('header.nav.examples')} {t('header.nav.editor')} {t('header.nav.pricing')} + {t('header.nav.classroom', 'For schools')} {t('header.nav.about')}

{t('footer.about')}

diff --git a/frontend/src/seoRoutes.ts b/frontend/src/seoRoutes.ts index 16ef1b3f..472543d6 100644 --- a/frontend/src/seoRoutes.ts +++ b/frontend/src/seoRoutes.ts @@ -410,6 +410,19 @@ export const SEO_ROUTES: SeoRoute[] = [ }, }, + // ── Classroom (institutional sales landing) — Phase 3 D3.7 + { + path: '/classroom', + priority: 0.85, + changefreq: 'monthly', + seoMeta: { + title: 'Velxio for educators — full Pro features for your classroom', + description: + 'Velxio for Classroom gives every student in your course Pro-tier access (private projects, GitHub Sync, BOM and schematic exports, offline desktop) under a single institution contract. From $40/student/year with volume discounts.', + url: `${DOMAIN}/classroom`, + }, + }, + // ── Auth / admin (noindex) { path: '/login', noindex: true }, { path: '/register', noindex: true },