import './globals.css'; export const metadata = { title: { default: 'ZeroPost — технологии по делу', template: '%s — ZeroPost', }, description: 'Блог про ИИ, кибербезопасность, автоматизацию и разработку. Разборы инструментов, рабочие промпты, реальные кейсы — без воды.', metadataBase: new URL('https://zeropost.ru'), keywords: ['искусственный интеллект', 'кибербезопасность', 'автоматизация', 'промпт-инжиниринг', 'ChatGPT', 'Claude', 'ИИ инструменты', 'AI разработка', 'информационная безопасность', 'n8n', 'no-code'], authors: [{ name: 'ZeroPost', url: 'https://zeropost.ru' }], creator: 'ZeroPost', publisher: 'ZeroPost', robots: { index: true, follow: true, googleBot: { index: true, follow: true }, }, openGraph: { type: 'website', locale: 'ru_RU', url: 'https://zeropost.ru', siteName: 'ZeroPost', title: 'ZeroPost — технологии по делу', description: 'ИИ, кибербезопасность, автоматизация и разработка. Разборы, кейсы, рабочие промпты — без воды.', images: [ { url: '/og-default.png', width: 1200, height: 630, alt: 'ZeroPost — технологии по делу', }, ], }, twitter: { card: 'summary_large_image', title: 'ZeroPost — технологии по делу', description: 'ИИ, кибербезопасность, автоматизация и разработка — без воды.', images: ['/og-default.png'], }, icons: { icon: [ { url: '/favicon.svg', type: 'image/svg+xml' }, { url: '/favicon-16x16.png', sizes: '16x16', type: 'image/png' }, { url: '/favicon-32x32.png', sizes: '32x32', type: 'image/png' }, ], apple: [{ url: '/apple-touch-icon.png', sizes: '180x180' }], other: [ { rel: 'manifest', url: '/site.webmanifest' }, ], }, alternates: { canonical: 'https://zeropost.ru', types: { 'application/rss+xml': '/rss.xml' }, }, }; export const viewport = { width: 'device-width', initialScale: 1, maximumScale: 5, themeColor: [ { media: '(prefers-color-scheme: light)', color: '#fafaf9' }, { media: '(prefers-color-scheme: dark)', color: '#0a0a0a' }, ], viewportFit: 'cover', }; const themeInitScript = ` (function() { try { var saved = localStorage.getItem('theme'); var theme = saved || 'light'; if (theme === 'dark') document.documentElement.classList.add('dark'); } catch(e) {} })(); `; export default function RootLayout({ children }) { return (
{children} ); }