ceo-web/src/app/layout.tsx
valentinbvro 883ff370cd feat: multi-tenant dashboard shell -- auth, onboarding, organizations, tasks, team
- login page (Supabase email/password sign-in + sign-up)
- onboarding: create first tenant, redirects into /dashboard once a
  membership exists
- dashboard shell: sidebar nav, tenant switcher (x-tenant-id header,
  never in body/query -- matches ceo-api's TenantGuard), sign out
- Organizations, Tasks, and Team (members/RBAC) pages wired to ceo-api
  via a thin apiFetch wrapper that attaches the Supabase bearer token
- executive "paper & ink" design tokens (Tailwind) replacing defaults
- Dockerfile: declare NEXT_PUBLIC_* as build ARGs so Coolify's existing
  build-time env vars actually get inlined (was previously silently
  dropped, which would have crashed prerendering)
2026-07-28 21:16:17 +02:00

26 lines
738 B
TypeScript

import type { Metadata } from 'next';
import { Fraunces, Inter } from 'next/font/google';
import { Providers } from './providers';
import './globals.css';
const display = Fraunces({
subsets: ['latin'],
variable: '--font-display',
weight: ['500', '600'],
});
const sans = Inter({ subsets: ['latin'], variable: '--font-sans' });
export const metadata: Metadata = {
title: 'CEO OS',
description: 'Personal & Executive Intelligence Operating System',
};
export default function RootLayout({ children }: { children: React.ReactNode }) {
return (
<html lang="ro" className={`${display.variable} ${sans.variable}`}>
<body className="font-sans">
<Providers>{children}</Providers>
</body>
</html>
);
}