SurfSense/surfsense_web/app/(home)/announcements/layout.tsx
Matt Van Horn 3487664bbd
feat(announcements): add SEO metadata via server layout.tsx
The announcements page is a public, crawlable route but its page.tsx is
'use client', so it can't export metadata itself and falls back to the
root app/layout.tsx. Add a server-component layout.tsx under
app/(home)/announcements/ that exports route-specific metadata (title,
description, canonical, OpenGraph, Twitter) in the same shape as the
neighboring /blog, /changelog, /contact, /privacy, /terms routes.
page.tsx is unchanged.

Canonical URL matches app/layout.tsx's metadataBase
(https://surfsense.com).

Fixes #1244
2026-04-24 15:58:20 -07:00

25 lines
799 B
TypeScript

import type { Metadata } from "next";
import type { ReactNode } from "react";
export const metadata: Metadata = {
title: "Announcements | SurfSense",
description: "Latest product updates, feature releases, and news from SurfSense.",
alternates: {
canonical: "https://surfsense.com/announcements",
},
openGraph: {
title: "Announcements | SurfSense",
description: "Latest product updates, feature releases, and news from SurfSense.",
url: "https://surfsense.com/announcements",
type: "website",
},
twitter: {
card: "summary_large_image",
title: "Announcements | SurfSense",
description: "Latest product updates, feature releases, and news from SurfSense.",
},
};
export default function AnnouncementsLayout({ children }: { children: ReactNode }) {
return <>{children}</>;
}