2025-12-06 12:46:40 +09:00
import { GoogleAnalytics } from "@next/third-parties/google"
import { Analytics } from "@vercel/analytics/react"
import type { Metadata , Viewport } from "next"
import { JetBrains_Mono , Plus_Jakarta_Sans } from "next/font/google"
import { DiagramProvider } from "@/contexts/diagram-context"
2025-03-27 08:24:17 +00:00
2025-12-06 12:46:40 +09:00
import "./globals.css"
2025-03-19 06:04:06 +00:00
2025-12-03 21:49:34 +09:00
const plusJakarta = Plus_Jakarta_Sans ( {
variable : "--font-sans" ,
2025-03-23 12:48:31 +00:00
subsets : [ "latin" ] ,
2025-12-03 21:49:34 +09:00
weight : [ "400" , "500" , "600" , "700" ] ,
2025-12-06 12:46:40 +09:00
} )
2025-03-19 06:04:06 +00:00
2025-12-03 21:49:34 +09:00
const jetbrainsMono = JetBrains_Mono ( {
variable : "--font-mono" ,
2025-03-23 12:48:31 +00:00
subsets : [ "latin" ] ,
2025-12-03 21:49:34 +09:00
weight : [ "400" , "500" ] ,
2025-12-06 12:46:40 +09:00
} )
2025-03-19 06:04:06 +00:00
2025-12-05 23:34:18 +09:00
export const viewport : Viewport = {
width : "device-width" ,
initialScale : 1 ,
maximumScale : 1 ,
userScalable : false ,
2025-12-06 12:46:40 +09:00
}
2025-12-05 23:34:18 +09:00
2025-03-19 06:04:06 +00:00
export const metadata : Metadata = {
2025-11-16 08:36:13 +09:00
title : "Next AI Draw.io - AI-Powered Diagram Generator" ,
2025-12-06 12:46:40 +09:00
description :
"Create AWS architecture diagrams, flowcharts, and technical diagrams using AI. Free online tool integrating draw.io with AI assistance for professional diagram creation." ,
keywords : [
"AI diagram generator" ,
"AWS architecture" ,
"flowchart creator" ,
"draw.io" ,
"AI drawing tool" ,
"technical diagrams" ,
"diagram automation" ,
"free diagram generator" ,
"online diagram maker" ,
] ,
2025-11-16 08:36:13 +09:00
authors : [ { name : "Next AI Draw.io" } ] ,
creator : "Next AI Draw.io" ,
publisher : "Next AI Draw.io" ,
2025-11-16 08:41:49 +09:00
metadataBase : new URL ( "https://next-ai-drawio.jiang.jp" ) ,
2025-11-16 08:36:13 +09:00
openGraph : {
title : "Next AI Draw.io - AI Diagram Generator" ,
2025-12-06 12:46:40 +09:00
description :
"Create professional diagrams with AI assistance. Supports AWS architecture, flowcharts, and more." ,
2025-11-16 08:36:13 +09:00
type : "website" ,
2025-11-16 08:41:49 +09:00
url : "https://next-ai-drawio.jiang.jp" ,
2025-11-16 08:36:13 +09:00
siteName : "Next AI Draw.io" ,
locale : "en_US" ,
images : [
{
url : "/architecture.png" ,
width : 1200 ,
height : 630 ,
alt : "Next AI Draw.io - AI-powered diagram creation tool" ,
} ,
] ,
} ,
twitter : {
card : "summary_large_image" ,
title : "Next AI Draw.io - AI Diagram Generator" ,
2025-12-06 12:46:40 +09:00
description :
"Create professional diagrams with AI assistance. Free, no login required." ,
2025-11-16 08:36:13 +09:00
images : [ "/architecture.png" ] ,
} ,
robots : {
index : true ,
follow : true ,
googleBot : {
index : true ,
follow : true ,
"max-video-preview" : - 1 ,
"max-image-preview" : "large" ,
"max-snippet" : - 1 ,
} ,
} ,
icons : {
icon : "/favicon.ico" ,
} ,
2025-12-06 12:46:40 +09:00
}
2025-03-19 06:04:06 +00:00
export default function RootLayout ( {
2025-03-23 12:48:31 +00:00
children ,
2025-03-19 06:04:06 +00:00
} : Readonly < {
2025-12-06 12:46:40 +09:00
children : React.ReactNode
2025-03-19 06:04:06 +00:00
} > ) {
2025-11-16 08:36:13 +09:00
const jsonLd = {
2025-12-06 12:46:40 +09:00
"@context" : "https://schema.org" ,
"@type" : "SoftwareApplication" ,
name : "Next AI Draw.io" ,
applicationCategory : "DesignApplication" ,
operatingSystem : "Web Browser" ,
description :
"AI-powered diagram generator with targeted XML editing capabilities that integrates with draw.io for creating AWS architecture diagrams, flowcharts, and technical diagrams. Features diagram history, multi-provider AI support, and real-time collaboration." ,
url : "https://next-ai-drawio.jiang.jp" ,
2025-11-16 08:36:13 +09:00
offers : {
2025-12-06 12:46:40 +09:00
"@type" : "Offer" ,
price : "0" ,
priceCurrency : "USD" ,
2025-11-16 08:36:13 +09:00
} ,
2025-12-06 12:46:40 +09:00
}
2025-11-16 08:36:13 +09:00
2025-03-23 12:48:31 +00:00
return (
< html lang = "en" >
2025-11-16 08:41:49 +09:00
< head >
2025-11-16 08:36:13 +09:00
< script
type = "application/ld+json"
dangerouslySetInnerHTML = { { __html : JSON.stringify ( jsonLd ) } }
/ >
2025-11-16 08:41:49 +09:00
< / head >
< body
2025-12-03 21:49:34 +09:00
className = { ` ${ plusJakarta . variable } ${ jetbrainsMono . variable } antialiased ` }
2025-11-16 08:41:49 +09:00
>
2025-03-27 08:24:17 +00:00
< DiagramProvider > { children } < / DiagramProvider >
2025-03-26 13:44:02 +00:00
< Analytics / >
2025-03-23 12:48:31 +00:00
< / body >
2025-12-03 20:35:31 +09:00
{ process . env . NEXT_PUBLIC_GA_ID && (
< GoogleAnalytics gaId = { process . env . NEXT_PUBLIC_GA_ID } / >
) }
2025-03-23 12:48:31 +00:00
< / html >
2025-12-06 12:46:40 +09:00
)
2025-03-19 06:04:06 +00:00
}