chore: remove canonical

This commit is contained in:
naymurdev
2026-03-31 17:08:01 +06:00
parent f03a5125c7
commit efb741c9e4
2 changed files with 122 additions and 135 deletions
+3 -13
View File
@@ -1,20 +1,10 @@
import type { Metadata } from "next";
import type React from "react";
export const metadata: Metadata = {
alternates: {
canonical: "/example",
},
robots: {
index: false,
follow: false,
},
};
export default function ExampleLayout({
children,
children,
}: {
children: React.ReactNode;
children: React.ReactNode;
}) {
return <>{children}</>;
return <>{children}</>;
}
+119 -122
View File
@@ -10,144 +10,141 @@ import { Toaster } from "sonner";
import schema from "./schema";
const poppins = Space_Grotesk({
subsets: ["latin"],
weight: ["300", "400", "500", "600", "700"],
subsets: ["latin"],
weight: ["300", "400", "500", "600", "700"],
});
export const metadata: Metadata = {
title: {
default: siteConfig.name,
template: `%s - ${siteConfig.name}`,
},
metadataBase: new URL(siteConfig.url),
alternates: {
canonical: "/",
},
description: siteConfig.description,
keywords: [
"box-shadow generator",
"text-shadow generator",
"shadow CSS generator",
"SVG clip-path generator",
"clip path maker",
"CSS clip-path",
"gradient generator",
"mesh gradient",
"mesh gradient generator",
"r3f mesh gradient",
"linear gradient generator",
"background pattern generator",
"linear pattern background",
"CSS pattern background",
"SVG background pattern",
title: {
default: siteConfig.name,
template: `%s - ${siteConfig.name}`,
},
metadataBase: new URL(siteConfig.url),
description: siteConfig.description,
keywords: [
"box-shadow generator",
"text-shadow generator",
"shadow CSS generator",
"SVG clip-path generator",
"clip path maker",
"CSS clip-path",
"gradient generator",
"mesh gradient",
"mesh gradient generator",
"r3f mesh gradient",
"linear gradient generator",
"background pattern generator",
"linear pattern background",
"CSS pattern background",
"SVG background pattern",
"color palette generator",
"color palette",
"color picker",
"color converter",
"hex to rgba converter",
"hsl to hex",
"color contrast checker",
"color palette generator",
"color palette",
"color picker",
"color converter",
"hex to rgba converter",
"hsl to hex",
"color contrast checker",
"GSAP animation examples",
"lenis scroll react",
"scroll animation react",
"web animation tools",
"react animation tools",
"react three fiber UI",
"r3f UI layouts",
"react spotlight effect",
"image mousetrail effect",
"shadcn UI components",
"GSAP animation examples",
"lenis scroll react",
"scroll animation react",
"web animation tools",
"react animation tools",
"react three fiber UI",
"r3f UI layouts",
"react spotlight effect",
"image mousetrail effect",
"shadcn UI components",
"Next.js UI tools",
"frontend tools for developers",
"creative UI tools",
"developer design utilities",
"modern UI generators",
"web design engineer",
"design system generator",
"Next.js UI tools",
"frontend tools for developers",
"creative UI tools",
"developer design utilities",
"modern UI generators",
"web design engineer",
"design system generator",
"naymur rahman tools",
"naymur dev",
],
"naymur rahman tools",
"naymur dev",
],
authors: [
{
name: "naymur rahman",
url: "https://naymur.com/",
},
],
creator: "naymur",
openGraph: {
type: "website",
locale: "en_US",
url: siteConfig.url,
title: siteConfig.openGraphName,
description: siteConfig.description,
siteName: siteConfig.name,
images: [
{
url: siteConfig.ogImage,
width: 1200,
height: 630,
alt: siteConfig.name,
},
],
},
twitter: {
card: "summary_large_image",
title: siteConfig.name,
description: siteConfig.description,
images: [siteConfig.ogImage],
creator: "@naymur_dev",
},
icons: {
icon: "/favicon.ico",
shortcut: "/favicon-16x16.png",
apple: "/apple-touch-icon.png",
},
manifest: `${siteConfig.url}/site.webmanifest`,
robots: {
index: true,
follow: true,
},
authors: [
{
name: "naymur rahman",
url: "https://naymur.com/",
},
],
creator: "naymur",
openGraph: {
type: "website",
locale: "en_US",
url: siteConfig.url,
title: siteConfig.openGraphName,
description: siteConfig.description,
siteName: siteConfig.name,
images: [
{
url: siteConfig.ogImage,
width: 1200,
height: 630,
alt: siteConfig.name,
},
],
},
twitter: {
card: "summary_large_image",
title: siteConfig.name,
description: siteConfig.description,
images: [siteConfig.ogImage],
creator: "@naymur_dev",
},
icons: {
icon: "/favicon.ico",
shortcut: "/favicon-16x16.png",
apple: "/apple-touch-icon.png",
},
manifest: `${siteConfig.url}/site.webmanifest`,
robots: {
index: true,
follow: true,
},
};
export default function RootLayout({
children,
children,
}: Readonly<{
children: React.ReactNode;
children: React.ReactNode;
}>) {
return (
<html lang="en" suppressHydrationWarning>
<Script
src="https://www.googletagmanager.com/gtag/js?id=G-5G7F4C09QB"
strategy="afterInteractive"
/>
<Script id="google-analytics" strategy="afterInteractive">
{`
return (
<html lang="en" suppressHydrationWarning>
<Script
src="https://www.googletagmanager.com/gtag/js?id=G-5G7F4C09QB"
strategy="afterInteractive"
/>
<Script id="google-analytics" strategy="afterInteractive">
{`
window.dataLayer = window.dataLayer || [];
function gtag(){dataLayer.push(arguments);}
gtag('js', new Date());
gtag('config', 'G-5G7F4C09QB');
`}
</Script>
<script
type="application/ld+json"
// biome-ignore lint/security/noDangerouslySetInnerHtml: JSON-LD must be server-rendered as raw script content for crawlers.
dangerouslySetInnerHTML={{ __html: schema() }}
/>
<body suppressHydrationWarning className={`${poppins.className}`}>
<NuqsAdapter>
<ThemeProvider attribute="class">
<TooltipProvider delayDuration={0}>
<Toaster position="bottom-right" richColors />
{children}
</TooltipProvider>
</ThemeProvider>
</NuqsAdapter>
</body>
</html>
);
</Script>
<script
type="application/ld+json"
// biome-ignore lint/security/noDangerouslySetInnerHtml: JSON-LD must be server-rendered as raw script content for crawlers.
dangerouslySetInnerHTML={{ __html: schema() }}
/>
<body suppressHydrationWarning className={`${poppins.className}`}>
<NuqsAdapter>
<ThemeProvider attribute="class">
<TooltipProvider delayDuration={0}>
<Toaster position="bottom-right" richColors />
{children}
</TooltipProvider>
</ThemeProvider>
</NuqsAdapter>
</body>
</html>
);
}