diff --git a/app/globals.css b/app/globals.css index 8dd5001..a910002 100644 --- a/app/globals.css +++ b/app/globals.css @@ -1,5 +1,22 @@ +@import "@fontsource/dm-sans/400.css"; +@import "@fontsource/dm-sans/500.css"; +@import "@fontsource/dm-sans/600.css"; +@import "@fontsource/dm-sans/700.css"; +@import "@fontsource/plus-jakarta-sans/500.css"; +@import "@fontsource/plus-jakarta-sans/600.css"; +@import "@fontsource/plus-jakarta-sans/700.css"; +@import "@fontsource/plus-jakarta-sans/800.css"; +@import "@fontsource/source-serif-4/400.css"; +@import "@fontsource/source-serif-4/500.css"; +@import "@fontsource/source-serif-4/600.css"; @import "tailwindcss"; +:root { + --font-dm-sans: "DM Sans", system-ui, sans-serif; + --font-plus-jakarta: "Plus Jakarta Sans", system-ui, sans-serif; + --font-source-serif: "Source Serif 4", Georgia, serif; +} + @custom-variant dark (&:where(.dark, .dark *)); /* Light theme — defaults (overridden by inline vars on when toggling) */ diff --git a/app/layout.tsx b/app/layout.tsx index a5b788f..6ea1d4d 100644 --- a/app/layout.tsx +++ b/app/layout.tsx @@ -1,27 +1,8 @@ import type { Metadata } from "next"; import Script from "next/script"; -import { DM_Sans, Plus_Jakarta_Sans, Source_Serif_4 } from "next/font/google"; import "./globals.css"; import { ebookMeta } from "@/content/ebook"; -const dmSans = DM_Sans({ - variable: "--font-dm-sans", - subsets: ["latin"], - weight: ["400", "500", "600", "700"], -}); - -const plusJakarta = Plus_Jakarta_Sans({ - variable: "--font-plus-jakarta", - subsets: ["latin"], - weight: ["500", "600", "700", "800"], -}); - -const sourceSerif = Source_Serif_4({ - variable: "--font-source-serif", - subsets: ["latin"], - weight: ["400", "500", "600"], -}); - export const metadata: Metadata = { title: `${ebookMeta.title} — Free Digital Nomad Ebook`, description: ebookMeta.subtitle, @@ -49,7 +30,7 @@ export default function RootLayout({
diff --git a/nomadrorn.sh b/nomadrorn.sh new file mode 100644 index 0000000..f92b798 --- /dev/null +++ b/nomadrorn.sh @@ -0,0 +1,3 @@ +#!/bin/bash +export PORT=4007 +exec pnpm run start \ No newline at end of file diff --git a/package.json b/package.json index 055979d..51e6493 100644 --- a/package.json +++ b/package.json @@ -9,6 +9,9 @@ "lint": "eslint" }, "dependencies": { + "@fontsource/dm-sans": "^5.2.8", + "@fontsource/plus-jakarta-sans": "^5.2.8", + "@fontsource/source-serif-4": "^5.2.9", "next": "16.2.6", "react": "19.2.4", "react-dom": "19.2.4" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 262e001..0567300 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -8,6 +8,15 @@ importers: .: dependencies: + '@fontsource/dm-sans': + specifier: ^5.2.8 + version: 5.2.8 + '@fontsource/plus-jakarta-sans': + specifier: ^5.2.8 + version: 5.2.8 + '@fontsource/source-serif-4': + specifier: ^5.2.9 + version: 5.2.9 next: specifier: 16.2.6 version: 16.2.6(@babel/core@7.29.0)(react-dom@19.2.4(react@19.2.4))(react@19.2.4) @@ -163,6 +172,15 @@ packages: resolution: {integrity: sha512-43/qtrDUokr7LJqoF2c3+RInu/t4zfrpYdoSDfYyhg52rwLV6TnOvdG4fXm7IkSB3wErkcmJS9iEhjVtOSEjjA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@fontsource/dm-sans@5.2.8': + resolution: {integrity: sha512-tlovG42m9ESG28WiHpLq3F5umAlm64rv0RkqTbYowRn70e9OlRr5a3yTJhrhrY+k5lftR/OFJjPzOLQzk8EfCA==} + + '@fontsource/plus-jakarta-sans@5.2.8': + resolution: {integrity: sha512-P5qE49fqdeD+7DXH1KBxmMPlB17LTz1zvBhFH0tFzfnYTKVJVyb0pR6plh0ZGXxcB+Oayb54FZZw3V42/DawTw==} + + '@fontsource/source-serif-4@5.2.9': + resolution: {integrity: sha512-er/Pym9emsEVJNf947umJ4kXarXfsiN6CN7kTYinefKRaHLwiquiiHOZvKvxWgkV8JMCf3pV3g0NcsPFpVCH9w==} + '@humanfs/core@0.19.2': resolution: {integrity: sha512-UhXNm+CFMWcbChXywFwkmhqjs3PRCmcSa/hfBgLIb7oQ5HNb1wS0icWsGtSAUNgefHeI+eBrA8I1fxmbHsGdvA==} engines: {node: '>=18.18.0'} @@ -2084,6 +2102,12 @@ snapshots: '@eslint/core': 0.17.0 levn: 0.4.1 + '@fontsource/dm-sans@5.2.8': {} + + '@fontsource/plus-jakarta-sans@5.2.8': {} + + '@fontsource/source-serif-4@5.2.9': {} + '@humanfs/core@0.19.2': dependencies: '@humanfs/types': 0.15.0