mirror of
https://github.com/hanzoai/next.js.git
synced 2026-10-30 14:46:38 +00:00
## What? Render the filename in the "edit the … file" line using **Geist Mono** across all `create-next-app` templates, so the preloaded font is actually used. ## Why? Every fresh app logged a browser warning: the Geist Mono `.woff2` is preloaded but never used, because the redesign in #81945 dropped the last monospace element (the old `<code>app/page.tsx</code>`). Rather than stop preloading the font (this PR's original approach), we _use_ it — the filename renders in Geist Mono. That clears the warning at its source and keeps the template showcasing both flagship fonts (two fonts, no flash of unstyled text). ## How? - Reverted the `preload: false` change. - Wrapped the filename in the intro line in a `<code>` rendered in Geist Mono, styled as a small inline code chip (slightly smaller size, subtle rounded background, padding) so it reads as a code token rather than plain heading text: - Tailwind templates → utility classes (`font-mono` maps to `--font-geist-mono` via `@theme inline`). - CSS-module templates → a `.code` class using `var(--font-geist-mono)`; the chip background uses `color-mix(currentColor …)` so it adapts to light/dark automatically. - Applied across all four families (`app`, `app-tw`, `default`, `default-tw`), JS + TS. ## Screenshots | | Before | After | | --------- | --------------------------------------------------- | -------------------------------------------- | | **Light** | <img width="2400" height="1520" alt="cna-geist-mono-before" src="https://github.com/user-attachments/assets/cf374265-7fdf-4c3b-9f66-05436f966fc9" /> | <img width="2400" height="1520" alt="cna-geist-mono-after" src="https://github.com/user-attachments/assets/ae55166d-26d8-4cc2-8268-90c5996d2431" /> | | **Dark** | <img width="2400" height="1520" alt="cna-geist-mono-before-dark" src="https://github.com/user-attachments/assets/d813adac-85c0-4044-813f-9489b0b4faa7" /> | <img width="2400" height="1520" alt="cna-geist-mono-after-dark" src="https://github.com/user-attachments/assets/01199df9-4842-46e0-a73e-a3ba0ef78ad2" /> | Before: filename in Geist Sans, preloaded-but-unused warning in the console. After: filename in Geist Mono, no warning. <!-- NEXT_JS_LLM_PR -->
83 lines
3.3 KiB
JavaScript
83 lines
3.3 KiB
JavaScript
import Image from "next/image";
|
|
import { Geist, Geist_Mono } from "next/font/google";
|
|
|
|
const geistSans = Geist({
|
|
variable: "--font-geist-sans",
|
|
subsets: ["latin"],
|
|
});
|
|
|
|
const geistMono = Geist_Mono({
|
|
variable: "--font-geist-mono",
|
|
subsets: ["latin"],
|
|
});
|
|
|
|
export default function Home() {
|
|
return (
|
|
<div
|
|
className={`${geistSans.variable} ${geistMono.variable} flex min-h-screen items-center justify-center bg-zinc-50 font-sans dark:bg-black`}
|
|
>
|
|
<main className="flex min-h-screen w-full max-w-3xl flex-col items-center justify-between py-32 px-16 bg-white dark:bg-black sm:items-start">
|
|
<Image
|
|
className="dark:invert h-5 w-[100px]"
|
|
src="/next.svg"
|
|
alt="Next.js logo"
|
|
width={100}
|
|
height={20}
|
|
priority
|
|
/>
|
|
<div className="flex flex-col items-center gap-6 text-center sm:items-start sm:text-left">
|
|
<h1 className="max-w-xs text-3xl font-semibold leading-10 tracking-tight text-black dark:text-zinc-50">
|
|
To get started, edit the{" "}
|
|
<code className="rounded bg-black/[.06] px-1.5 py-0.5 font-mono text-[0.9em] dark:bg-white/[.08]">
|
|
index.js
|
|
</code>{" "}
|
|
file.
|
|
</h1>
|
|
<p className="max-w-md text-lg leading-8 text-zinc-600 dark:text-zinc-400">
|
|
Looking for a starting point or more instructions? Head over to{" "}
|
|
<a
|
|
href="https://vercel.com/templates?framework=next.js&utm_source=create-next-app&utm_medium=default-template-tw&utm_campaign=create-next-app"
|
|
className="font-medium text-zinc-950 dark:text-zinc-50"
|
|
>
|
|
Templates
|
|
</a>{" "}
|
|
or the{" "}
|
|
<a
|
|
href="https://nextjs.org/learn?utm_source=create-next-app&utm_medium=default-template-tw&utm_campaign=create-next-app"
|
|
className="font-medium text-zinc-950 dark:text-zinc-50"
|
|
>
|
|
Learning
|
|
</a>{" "}
|
|
center.
|
|
</p>
|
|
</div>
|
|
<div className="flex flex-col gap-4 text-base font-medium sm:flex-row">
|
|
<a
|
|
className="flex h-12 w-full items-center justify-center gap-2 rounded-full bg-foreground px-5 text-background transition-colors hover:bg-[#383838] dark:hover:bg-[#ccc] md:w-[158px]"
|
|
href="https://vercel.com/new?utm_source=create-next-app&utm_medium=default-template-tw&utm_campaign=create-next-app"
|
|
target="_blank"
|
|
rel="noopener noreferrer"
|
|
>
|
|
<Image
|
|
className="dark:invert h-[14px] w-4"
|
|
src="/vercel.svg"
|
|
alt="Vercel logomark"
|
|
width={16}
|
|
height={14}
|
|
/>
|
|
Deploy Now
|
|
</a>
|
|
<a
|
|
className="flex h-12 w-full items-center justify-center rounded-full border border-solid border-black/[.08] px-5 transition-colors hover:border-transparent hover:bg-black/[.04] dark:border-white/[.145] dark:hover:bg-[#1a1a1a] md:w-[158px]"
|
|
href="https://nextjs.org/docs/pages/getting-started?utm_source=create-next-app&utm_medium=default-template-tw&utm_campaign=create-next-app"
|
|
target="_blank"
|
|
rel="noopener noreferrer"
|
|
>
|
|
Documentation
|
|
</a>
|
|
</div>
|
|
</main>
|
|
</div>
|
|
);
|
|
}
|