The 1st decentralized social network for sharing when you're on the toilet. Post a "flush" today! Powered by the AT Protocol.
at main 73 lines 2.2 kB view raw
1import type { Metadata } from 'next'; 2import './globals.css'; 3import { AuthProvider } from '@/lib/auth-context'; 4import { ThemeProvider } from '@/lib/theme-context'; 5import ClientOnly from '@/components/ClientOnly'; 6import NavigationBar from '@/components/NavigationBar'; 7import { Analytics } from "@vercel/analytics/react" 8 9// Configure this layout as having dynamic runtime to fix SSR issues with theme 10export const dynamic = 'force-dynamic'; 11 12export const metadata: Metadata = { 13 title: "Flushes", 14 description: 'The world\'s first decentralized social media app for sharing the most universal human experience. Post your flushes and connect with other bathroom enjoyers.', 15 // Add the custom shortcut-version meta tag 16 other: { 17 'shortcut-version': '1.0', 18 }, 19 icons: { 20 icon: '/favicon.png', 21 }, 22 openGraph: { 23 title: 'Flushes', 24 description: 'The world\'s first decentralized social media app for sharing the most universal human experience. Post your flushes and connect with other bathroom enjoyers.', 25 url: 'https://flushes.app', 26 siteName: 'Flushes', 27 images: [ 28 { 29 url: 'https://flushes.app/og-image.png', 30 width: 1200, 31 height: 630, 32 alt: 'Flushes', 33 } 34 ], 35 locale: 'en_US', 36 type: 'website', 37 }, 38 twitter: { 39 card: 'summary_large_image', 40 title: 'Flushes', 41 description: 'The world\'s first decentralized social media app for sharing the most universal human experience. Post your flushes and connect with other bathroom enjoyers.', 42 images: ['https://flushes.app/og-image.png'], 43 } 44}; 45 46export default function RootLayout({ 47 children, 48}: { 49 children: React.ReactNode; 50}) { 51 return ( 52 <html lang="en"> 53 <head> 54 <link rel="stylesheet" href="https://use.typekit.net/gik3riw.css" /> 55 </head> 56 <body> 57 <ClientOnly> 58 <AuthProvider> 59 <ThemeProvider> 60 <header> 61 <ClientOnly> 62 <NavigationBar /> 63 </ClientOnly> 64 </header> 65 <main>{children}</main> 66 </ThemeProvider> 67 </AuthProvider> 68 </ClientOnly> 69 <Analytics /> 70 </body> 71 </html> 72 ); 73}