UNPKG

next-seo-metadata

Version:

A CLI tool to generate and manage Next.js metadata configurations

136 lines (117 loc) 3.06 kB
/** * Next.js SEO Metadata Configuration * * This file contains all the metadata for your Next.js application. * Edit the siteConfig object to update your site information. */ /** * Site Configuration * Modify this object to update your site details */ const siteConfig = { // Basic info name: "{{siteName}}", url: "{{siteUrl}}", description: "{{siteDescription}}", // Social media and contact twitter: { handle: "@yourtwitterhandle", site: "@yoursite", cardType: "summary_large_image", }, // Open Graph openGraph: { type: "website", locale: "en_US", siteName: "{{siteName}}", }, // Icons icons: { icon: "/favicon.ico", apple: [{ url: "/apple-icon.png" }], }, // Default image for social sharing defaultImage: "/images/og-default.jpg", // Keywords for SEO keywords: [ "Next.js", "React", "JavaScript", // Add more keywords related to your site ], // Creator/author info creator: "Your Name", publisher: "{{siteName}}", // Other themeColor: "#ffffff", robots: { index: true, follow: true, }, }; /** * Metadata Configuration * The metadata object is structured according to Next.js metadata API * https://nextjs.org/docs/app/api-reference/functions/generate-metadata */ const metadata = { // Basic metadata title: { default: siteConfig.name, template: `%s | ${siteConfig.name}`, }, description: siteConfig.description, keywords: siteConfig.keywords, // Open Graph openGraph: { title: siteConfig.name, description: siteConfig.description, url: siteConfig.url, siteName: siteConfig.openGraph.siteName, locale: siteConfig.openGraph.locale, type: siteConfig.openGraph.type, images: [ { url: `${siteConfig.url}${siteConfig.defaultImage}`, width: 1200, height: 630, alt: siteConfig.name, }, ], }, // Twitter twitter: { card: siteConfig.twitter.cardType, title: siteConfig.name, description: siteConfig.description, site: siteConfig.twitter.site, creator: siteConfig.twitter.handle, images: [`${siteConfig.url}${siteConfig.defaultImage}`], }, // Icons icons: siteConfig.icons, // Other metadata robots: siteConfig.robots, themeColor: siteConfig.themeColor, creator: siteConfig.creator, publisher: siteConfig.publisher, // Verification tokens (uncomment and add your verification tokens) // verification: { // google: "your-google-verification-token", // yandex: "your-yandex-verification-token", // yahoo: "your-yahoo-verification-token", // }, // Canonical URL alternates: { canonical: siteConfig.url, }, // Viewport viewport: { width: "device-width", initialScale: 1, }, }; // Export the metadata object as default export default metadata; // Export siteConfig for use in other files export { siteConfig };