From 5a6ffd600a3cab1c73b7f5a3ec95e613764d2ec0 Mon Sep 17 00:00:00 2001 From: ryan Date: Sun, 28 Jun 2026 11:20:02 +0800 Subject: [PATCH] feat(frontend): integrate self-hosted Inter Google font Use next/font/google to download and host Inter locally, injecting it into html root via Tailwind CSS variables and fallback to PingFang SC for Chinese characters. --- frontend/app/globals.css | 4 ++-- frontend/app/layout.tsx | 9 ++++++++- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/frontend/app/globals.css b/frontend/app/globals.css index eba809e2..34d754c0 100644 --- a/frontend/app/globals.css +++ b/frontend/app/globals.css @@ -7,8 +7,8 @@ @theme inline { --color-background: var(--background); --color-foreground: var(--foreground); - --font-sans: var(--font-geist-sans), system-ui, -apple-system, BlinkMacSystemFont, var(--font-noto-sans-sc), sans-serif; - --font-mono: var(--font-geist-mono), 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', var(--font-noto-sans-sc), monospace; + --font-sans: var(--font-inter), 'PingFang SC', 'Microsoft YaHei', sans-serif; + --font-mono: var(--font-geist-mono), 'SF Mono', 'Monaco', 'Inconsolata', 'Roboto Mono', 'PingFang SC', 'Microsoft YaHei', monospace; --color-sidebar-ring: var(--sidebar-ring); --color-sidebar-border: var(--sidebar-border); --color-sidebar-accent-foreground: var(--sidebar-accent-foreground); diff --git a/frontend/app/layout.tsx b/frontend/app/layout.tsx index 8c02df74..a687d5e7 100644 --- a/frontend/app/layout.tsx +++ b/frontend/app/layout.tsx @@ -1,4 +1,5 @@ import type {Metadata} from "next"; +import {Inter} from "next/font/google"; import {Toaster} from "@/components/ui/sonner"; import {ThemeProvider} from "@/components/layout/theme-provider"; import {CustomThemeProvider} from "@/lib/theme"; @@ -10,6 +11,12 @@ import {SiteTitleUpdater} from "@/components/providers/title-updater"; import {RobotsMeta} from "@/components/layout/robots-meta"; import "./globals.css"; +const inter = Inter({ + subsets: ["latin"], + variable: "--font-inter", + display: "swap", +}); + export const metadata: Metadata = { title: "Wavelet Platform", description: "通用二次开发标准范式平台", @@ -23,7 +30,7 @@ export default function RootLayout({ return (