Files
n3wt-school/Front-End/src/app/layout.js
Luc SORIGNET cb76a23d02 docs(design-system): add design system documentation and AI agent instructions
- Add docs/design-system.md with color tokens, typography, spacing, icons, responsive/PWA rules and component reuse guidelines
- Add CLAUDE.md with permanent instructions for Claude Code
- Add .github/instructions/design-system.instruction.md for GitHub Copilot
- Update .github/copilot-instructions.md to reference the design system
- Update Front-End/tailwind.config.js with color tokens (primary, secondary, tertiary, neutral) and font families (Manrope/Inter)
- Update Front-End/src/app/layout.js to load Manrope and Inter via next/font/google
2026-04-04 11:56:19 +02:00

61 lines
1.4 KiB
JavaScript

import React from 'react';
import { getMessages } from 'next-intl/server';
import { Inter, Manrope } from 'next/font/google';
import Providers from '@/components/Providers';
import ServiceWorkerRegister from '@/components/ServiceWorkerRegister';
import '@/css/tailwind.css';
import { headers } from 'next/headers';
const inter = Inter({
subsets: ['latin'],
variable: '--font-inter',
display: 'swap',
});
const manrope = Manrope({
subsets: ['latin'],
variable: '--font-manrope',
display: 'swap',
});
export const metadata = {
title: 'N3WT-SCHOOL',
description: "Gestion de l'école",
manifest: '/manifest.webmanifest',
appleWebApp: {
capable: true,
statusBarStyle: 'default',
title: 'N3WT School',
},
icons: {
icon: [
{
url: '/favicon.svg',
type: 'image/svg+xml',
},
{
url: '/favicon.ico',
sizes: 'any',
},
],
apple: '/icons/icon.svg',
},
};
export default async function RootLayout({ children, params }) {
const headersList = headers();
const locale = headersList.get('x-locale') || 'fr';
const messages = await getMessages(locale);
return (
<html lang={locale}>
<body className={`p-0 m-0 font-body ${inter.variable} ${manrope.variable}`}>
<Providers messages={messages} locale={locale} session={params.session}>
{children}
</Providers>
<ServiceWorkerRegister />
</body>
</html>
);
}