diff --git a/public/images/meta_image.png b/public/images/meta_image.png new file mode 100644 index 0000000..90739b6 Binary files /dev/null and b/public/images/meta_image.png differ diff --git a/src/app/layout.tsx b/src/app/layout.tsx index baedd65..1c23d48 100644 --- a/src/app/layout.tsx +++ b/src/app/layout.tsx @@ -17,9 +17,42 @@ const geistMono = Geist_Mono({ subsets: ['latin'], }); +const SITE_URL = 'https://syncly-virid.vercel.app'; + export const metadata: Metadata = { - title: 'Create Next App', - description: 'Generated by create next app', + metadataBase: new URL(SITE_URL), + title: { + default: 'Syncly', + template: '%s | Syncly', + }, + description: '목적에 맞는 워크스페이스로 팀의 협업을 한곳에서 관리하는 Syncly입니다.', + applicationName: 'Syncly', + icons: { + icon: [{ url: '/images/auth/login-symbol.png', type: 'image/png' }], + apple: [{ url: '/images/auth/login-symbol.png', type: 'image/png' }], + }, + openGraph: { + title: 'Syncly', + description: '목적에 맞는 워크스페이스로 팀의 협업을 한곳에서 관리하세요.', + siteName: 'Syncly', + locale: 'ko_KR', + type: 'website', + url: SITE_URL, + images: [ + { + url: '/images/meta_image.png', + width: 1200, + height: 640, + alt: 'Syncly - 목적에 맞는 워크스페이스 협업 서비스', + }, + ], + }, + twitter: { + card: 'summary_large_image', + title: 'Syncly', + description: '목적에 맞는 워크스페이스로 팀의 협업을 한곳에서 관리하세요.', + images: ['/images/meta_image.png'], + }, }; export default function RootLayout({ @@ -29,7 +62,7 @@ export default function RootLayout({ }>) { return (