Add site favicon and enhance metadata for better SEO and social sharing: - Added app/icon.svg from existing logo for browser tab icon - Enhanced metadata with Open Graph and Twitter card support - Created manifest.json for PWA support - Added metadataBase for proper social image resolution - Updated .env.example with NEXT_PUBLIC_APP_URL The Xpeditis logo (blue background with cyan X) now appears in: - Browser tabs (favicon) - Bookmarks - Mobile home screen (PWA) - Social media shares (Open Graph) Configuration for different environments: - Dev: NEXT_PUBLIC_APP_URL=http://localhost:3000 - Preprod: NEXT_PUBLIC_APP_URL=https://app.preprod.xpeditis.com - Prod: NEXT_PUBLIC_APP_URL=https://xpeditis.com 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
52 lines
1.5 KiB
TypeScript
52 lines
1.5 KiB
TypeScript
import type { Metadata } from 'next';
|
|
import './globals.css';
|
|
import { manrope, montserrat } from '@/lib/fonts';
|
|
import { Providers } from '@/components/providers';
|
|
|
|
export const metadata: Metadata = {
|
|
metadataBase: new URL(process.env.NEXT_PUBLIC_APP_URL || 'https://xpeditis.com'),
|
|
title: {
|
|
default: 'Xpeditis - Maritime Freight Booking Platform',
|
|
template: '%s | Xpeditis',
|
|
},
|
|
description: 'Search, compare, and book maritime freight in real-time. Get instant LCL shipping quotes and manage your shipments with Xpeditis.',
|
|
icons: {
|
|
icon: '/icon.svg',
|
|
shortcut: '/icon.svg',
|
|
apple: '/icon.svg',
|
|
},
|
|
manifest: '/manifest.json',
|
|
openGraph: {
|
|
type: 'website',
|
|
locale: 'fr_FR',
|
|
url: 'https://xpeditis.com',
|
|
siteName: 'Xpeditis',
|
|
title: 'Xpeditis - Maritime Freight Booking Platform',
|
|
description: 'Search, compare, and book maritime freight in real-time',
|
|
images: [
|
|
{
|
|
url: '/assets/logos/xpeditis-icon.svg',
|
|
width: 48,
|
|
height: 48,
|
|
alt: 'Xpeditis Logo',
|
|
},
|
|
],
|
|
},
|
|
twitter: {
|
|
card: 'summary',
|
|
title: 'Xpeditis - Maritime Freight Booking Platform',
|
|
description: 'Search, compare, and book maritime freight in real-time',
|
|
images: ['/assets/logos/xpeditis-icon.svg'],
|
|
},
|
|
};
|
|
|
|
export default function RootLayout({ children }: { children: React.ReactNode }) {
|
|
return (
|
|
<html lang="fr" className={`${manrope.variable} ${montserrat.variable}`}>
|
|
<body className="font-body">
|
|
<Providers>{children}</Providers>
|
|
</body>
|
|
</html>
|
|
);
|
|
}
|