layout.tsx 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. import '@/styles/website.scss';
  2. import { creator, description, name, uiUrl } from '@/config/site';
  3. import PageProgress from '@/components/PageProgress';
  4. export const metadata = {
  5. title: {
  6. default: name,
  7. template: `%s - ${name}`,
  8. },
  9. metadataBase: process.env.NEXT_PUBLIC_APP_URL,
  10. description: description,
  11. keywords: [
  12. 'css',
  13. 'html',
  14. 'jekyll',
  15. 'sass',
  16. 'bootstrap',
  17. 'modular',
  18. 'html5',
  19. 'dashboard',
  20. 'sponsors',
  21. 'uikit',
  22. 'boilerplate-template',
  23. 'scss',
  24. 'admin-dashboard',
  25. 'themes',
  26. 'dashboards',
  27. 'ui-kit',
  28. 'adminpanel',
  29. 'dashboard-templates',
  30. 'bootstrap4-theme',
  31. 'bootstrap5',
  32. 'bootstrap',
  33. ],
  34. authors: [
  35. {
  36. name: creator,
  37. url: uiUrl,
  38. },
  39. ],
  40. creator: creator,
  41. themeColor: [
  42. { media: '(prefers-color-scheme: light)', color: 'white' },
  43. { media: '(prefers-color-scheme: dark)', color: 'black' },
  44. ],
  45. openGraph: {
  46. type: 'website',
  47. locale: 'en_US',
  48. url: uiUrl,
  49. siteName: name,
  50. },
  51. twitter: {
  52. card: 'summary_large_image',
  53. images: ['og.jpg'],
  54. creator: `@${creator}`,
  55. },
  56. icons: {
  57. icon: '/favicon.ico',
  58. shortcut: '/favicon-16x16.png',
  59. apple: '/apple-touch-icon.png',
  60. },
  61. };
  62. export default function RootLayout({ children }: { children: React.ReactNode }) {
  63. return (
  64. <html lang="en">
  65. <head>
  66. {process.env.NODE_ENV !== 'development' && (
  67. <>
  68. <script defer data-api="/stats/api/event" data-domain="tabler.io,tabler" src="/stats/js/script.js" />
  69. <script>{'window.plausible=window.plausible||function(){(window.plausible.q=window.plausible.q||[]).push(arguments)}'}</script>
  70. </>
  71. )}
  72. </head>
  73. <body className="body-gradient">
  74. <PageProgress />
  75. {/*<div id="modal-root"></div>*/}
  76. {children}
  77. <link rel="stylesheet" href="https://rsms.me/inter/inter.css" />
  78. <script src="https://assets.lemonsqueezy.com/lemon.js" defer />
  79. </body>
  80. </html>
  81. );
  82. }