New: Ui Redesign (#1)
All checks were successful
Automated Container Build / build-and-push (push) Successful in 1m6s

Reviewed-on: #1
This commit is contained in:
Elijah 2026-07-11 13:50:31 -07:00
parent 009d1eb065
commit bd071b3906
22 changed files with 464 additions and 524 deletions

View file

@ -1,16 +1,23 @@
import type { Metadata } from "next";
import { Inter } from "next/font/google";
import { Manrope, Newsreader } from "next/font/google";
import Script from "next/script";
import "./globals.css";
const inter = Inter({
variable: "--font-inter",
const manrope = Manrope({
variable: "--font-manrope",
subsets: ["latin"],
display: "swap",
});
const newsreader = Newsreader({
variable: "--font-newsreader",
subsets: ["latin"],
display: "swap",
});
export const metadata: Metadata = {
title: "Study App",
description: "Practice exams and quizzes",
title: "Study Desk",
description: "A focused workspace for flashcards and practice quizzes",
};
export default function RootLayout({
@ -19,23 +26,21 @@ export default function RootLayout({
children: React.ReactNode;
}>) {
return (
<html lang="en" className={`${inter.variable} h-full`} suppressHydrationWarning>
<head>
<script
dangerouslySetInnerHTML={{
__html: `
<html lang="en" className={`${manrope.variable} ${newsreader.variable} h-full`} suppressHydrationWarning>
<body className="min-h-full flex flex-col font-sans antialiased">
<Script id="theme-init" strategy="beforeInteractive">
{`
try {
if (localStorage.theme === 'dark') {
const savedTheme = localStorage.theme
const prefersDark = window.matchMedia('(prefers-color-scheme: dark)').matches
if (savedTheme === 'dark' || (!savedTheme && prefersDark)) {
document.documentElement.classList.add('dark')
} else {
document.documentElement.classList.remove('dark')
}
} catch (_) {}
`,
}}
/>
</head>
<body className="min-h-full flex flex-col font-sans antialiased">
`}
</Script>
{children}
</body>
</html>