FarsiUI
رویا

XB Roya

منبع
وزن

نصب

روش نصب را انتخاب کنید

یک دستور — فایل‌های فونت و لایسنس در app/fonts کپی می‌شوند.

Terminal
npx farsiui@latest add font-xb-roya

ساختار بعد از add:

app/fonts/
app/
└── fonts/
    └── xb-roya/
        ├── XBRoya-Regular.woff2
        ├── XBRoya-Bold.woff2
        ├── XBRoya-Italic.woff2
        ├── XBRoya-BoldItalic.woff2
        ├── font-face.css
        ├── LICENSE
        └── OFL.txt

فونت را با next/font/local به layout وصل کنید.

app/layout.tsx
import localFont from "next/font/local"

const xbRoya = localFont({
  src: "./fonts/xb-roya/XBRoya-Regular.woff2",
  variable: "--font-xb-roya",
  weight: "400",
  display: "swap",
})

export default function RootLayout({
  children,
}: {
  children: React.ReactNode
}) {
  return (
    <html
      lang="fa"
      dir="rtl"
      className={`${xbRoya.variable} ${xbRoya.className}`}
    >
      <body className="antialiased">{children}</body>
    </html>
  )
}

اختیاری — اگر className روی html کافی است رد شوید. در غیر این صورت برای توکن Tailwind از @theme و بدون Tailwind از body استفاده کنید.

app/globals.css
@theme inline {
  --font-sans: var(--font-xb-roya), ui-sans-serif, system-ui, sans-serif;
}

body {
  font-family: var(--font-xb-roya), ui-sans-serif, system-ui, sans-serif;
}