layout.tsx 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. import type { Metadata } from "next";
  2. import { IBM_Plex_Mono, Source_Sans_3, Syne } from "next/font/google";
  3. import "./globals.css";
  4. const syne = Syne({
  5. variable: "--font-display",
  6. subsets: ["latin"],
  7. weight: ["500", "600", "700"],
  8. });
  9. const sourceSans = Source_Sans_3({
  10. variable: "--font-body",
  11. subsets: ["latin"],
  12. weight: ["400", "500", "600", "700"],
  13. });
  14. const plexMono = IBM_Plex_Mono({
  15. variable: "--font-mono",
  16. subsets: ["latin"],
  17. weight: ["400", "500"],
  18. });
  19. export const metadata: Metadata = {
  20. title: {
  21. default: "krypco — private speed, public proof",
  22. template: "%s · krypco",
  23. },
  24. description:
  25. "krypco is a hybrid blockchain: a private permissioned layer anchored to a public chain. Explore the network in the portal.",
  26. icons: {
  27. icon: "/brand/favicon.svg",
  28. apple: "/brand/icon.svg",
  29. },
  30. };
  31. export default function RootLayout({
  32. children,
  33. }: Readonly<{
  34. children: React.ReactNode;
  35. }>) {
  36. return (
  37. <html lang="en" className="dark">
  38. <body
  39. className={`${syne.variable} ${sourceSans.variable} ${plexMono.variable} font-sans antialiased`}
  40. >
  41. {children}
  42. </body>
  43. </html>
  44. );
  45. }