2025-11-07 11:26:19 +01:00
import type { Metadata } from 'next' ;
import './globals.css' ;
2026-02-22 21:35:53 +01:00
import { Providers } from '@/components/providers/Providers' ;
2025-11-07 11:26:19 +01:00
export const metadata : Metadata = {
title : 'Kit - Your Creative Toolkit' ,
2025-11-07 12:30:08 +01:00
description : 'A curated collection of creative and utility tools for developers and creators. Features file conversion, image editing, and color manipulation.' ,
2025-11-17 11:18:52 +01:00
keywords : [ 'tools' , 'utilities' , 'file converter' , 'image editor' , 'color palette' , 'creative toolkit' , 'convert' , 'paint' , 'pastel' , 'open source' ] ,
2025-11-07 12:30:08 +01:00
authors : [ { name : 'pivoine.art' } ] ,
creator : 'pivoine.art' ,
publisher : 'pivoine.art' ,
metadataBase : new URL ( 'https://kit.pivoine.art' ) ,
openGraph : {
title : 'Kit - Your Creative Toolkit' ,
description : 'A curated collection of creative and utility tools for developers and creators. Privacy-first, open source, and free to use.' ,
url : 'https://kit.pivoine.art' ,
siteName : 'Kit' ,
locale : 'en_US' ,
type : 'website' ,
images : [
{
url : '/og-image.png' ,
width : 1200 ,
height : 630 ,
alt : 'Kit - Your Creative Toolkit' ,
} ,
] ,
} ,
twitter : {
card : 'summary_large_image' ,
title : 'Kit - Your Creative Toolkit' ,
description : 'A curated collection of creative and utility tools for developers and creators.' ,
images : [ '/og-image.png' ] ,
} ,
robots : {
index : true ,
follow : true ,
googleBot : {
index : true ,
follow : true ,
'max-video-preview' : - 1 ,
'max-image-preview' : 'large' ,
'max-snippet' : - 1 ,
} ,
} ,
2025-11-07 11:26:19 +01:00
} ;
export default function RootLayout ( {
children ,
} : Readonly < {
children : React.ReactNode ;
} > ) {
2026-02-23 17:09:44 +01:00
const umamiScript = process . env . UMAMI_SCRIPT ;
const umamiId = process . env . UMAMI_ID ;
const isProd = process . env . NODE_ENV === 'production' ;
2025-11-07 11:26:19 +01:00
return (
2026-02-23 00:40:45 +01:00
< html lang = "en" className = "dark" suppressHydrationWarning >
2025-11-07 12:30:08 +01:00
< head >
< meta name = "viewport" content = "width=device-width, initial-scale=1" / >
< link rel = "preconnect" href = "https://kit.pivoine.art" / >
2026-02-23 17:09:44 +01:00
{ isProd && umamiScript && umamiId && (
< script defer src = { umamiScript } data-website-id = { umamiId } > < / script >
) }
2026-02-23 00:40:45 +01:00
< script
dangerouslySetInnerHTML = { {
__html : `
(function() {
try {
var theme = localStorage.getItem('theme');
var isLanding = window.location.pathname === '/';
if (isLanding) {
document.documentElement.classList.add('dark');
document.documentElement.classList.remove('light');
} else if (theme === 'light' || (!theme && window.matchMedia('(prefers-color-scheme: light)').matches)) {
document.documentElement.classList.add('light');
document.documentElement.classList.remove('dark');
} else {
document.documentElement.classList.add('dark');
document.documentElement.classList.remove('light');
}
} catch (e) {}
})();
` ,
} }
/ >
2025-11-07 12:30:08 +01:00
< / head >
2025-11-07 11:26:19 +01:00
< body className = "antialiased" >
{ children }
< / body >
< / html >
) ;
}