Files
breakpilot-lehrer/admin-lehrer/app/layout.tsx
Benjamin Admin b1cdb2531c
Some checks failed
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-school (push) Successful in 28s
CI / test-go-edu-search (push) Successful in 30s
CI / test-python-klausur (push) Failing after 1m59s
CI / test-python-agent-core (push) Successful in 16s
CI / test-nodejs-website (push) Successful in 18s
feat: CSS Grid editor with OCR-measured column widths and row heights
Backend: add layout_metrics (avg_row_height_px, font_size_suggestion_px)
to build-grid response for faithful grid reconstruction.

Frontend: rewrite GridTable from HTML <table> to CSS Grid layout.
Column widths are now proportional to the OCR-measured x_min/x_max
positions. Row heights use the average content row height from the
scan. Column and row resize via drag handles (Excel-like).

Font: add Noto Sans (supports IPA characters) via next/font/google.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-17 13:48:47 +01:00

34 lines
777 B
TypeScript

import type { Metadata } from 'next'
import localFont from 'next/font/local'
import { Noto_Sans } from 'next/font/google'
import './globals.css'
const inter = localFont({
src: '../public/fonts/Inter-VariableFont.woff2',
variable: '--font-inter',
display: 'swap',
})
const notoSans = Noto_Sans({
subsets: ['latin', 'latin-ext'],
variable: '--font-noto-sans',
display: 'swap',
})
export const metadata: Metadata = {
title: 'BreakPilot Admin Lehrer KI',
description: 'Neues Admin-Frontend mit verbesserter Navigation und Rollen-System',
}
export default function RootLayout({
children,
}: {
children: React.ReactNode
}) {
return (
<html lang="de">
<body className={`${inter.className} ${notoSans.variable}`}>{children}</body>
</html>
)
}