// https://nuxt.com/docs/api/configuration/nuxt-config import tailwindcss from "@tailwindcss/vite"; export default defineNuxtConfig({ compatibilityDate: '2025-07-15', devtools: { enabled: false }, ssr: true, modules: ['@nuxt/ui', '@nuxtjs/i18n'], css: ['~/assets/css/main.css'], vite: { plugins: [ tailwindcss(), ] }, runtimeConfig: { public: { baseUrl: process.env.NUXT_PUBLIC_BASE_URL, siteAuthor: process.env.NUXT_PUBLIC_SITE_AUTHOR, siteName: process.env.NUXT_PUBLIC_SITE_NAME, twitterUsername: process.env.NUXT_PUBLIC_TWITTER_USERNAME } }, app: { // pageTransition: { name: 'page', mode: 'out-in' }, head: { titleTemplate: `%s / ${process.env.NUXT_PUBLIC_SITE_NAME || '*nix in Thailand'}`, meta: [ { name: 'description', content: 'A place for everything Unix and Unix-like system including its software. And provide a free documentation and universal access to other free software.' }, { name: 'referrer', content: 'strict-origin-when-cross-origin' }, { name: 'canonical', content: process.env.NUXT_PUBLIC_BASE_URL }, { name: 'robots', content: 'index,follow' }, // UNUSED { name: 'author', content: process.env.NUXT_PUBLIC_AUTHOR }, { name: 'application-name', content: process.env.NUXT_PUBLIC_SITE_NAME }, { name: 'theme-color', content: '#ae8324' }, // Open Graph { property: 'og:title', content: `${process.env.NUXT_PUBLIC_SITE_NAME}` }, { property: 'og:description', content: 'A place for everything Unix and Unix-like system including its software. And provide a free documentation and universal access to other free software.' }, { property: 'og:url', content: process.env.NUXT_PUBLIC_BASE_URL }, { property: 'og:site_name', content: process.env.NUXT_PUBLIC_BASE_URL }, { property: 'og:type', content: 'website' }, { property: 'og:locale', content: 'en_US' }, // Twitter // { name: 'twitter:creator', content: '@techitwinner' }, // { name: 'twitter:site', content: '@techitwinner' }, { name: 'twitter:card', content: 'summary' }, { name: 'twitter:url', content: process.env.NUXT_PUBLIC_BASE_URL }, { name: 'twitter:image', content: '' }, // Apple Web App { name: 'mobile-web-app-capable', content: 'yes' }, { name: 'apple-mobile-web-app-capable', content: 'yes' }, { name: 'apple-mobile-web-app-status-bar-style', content: 'black' }, // { name: 'apple-mobile-web-app-title', content: process.env.NUXT_PUBLIC_AUTHOR } ], htmlAttrs: { lang: 'en', }, charset: 'utf-8', viewport: 'width=device-width, initial-scale=1', link: [ { rel: 'icon', type: 'image/vnd.microsoft.icon', href: '/favicon.ico' }, // { rel: 'stylesheet', href: '/style.css' }, // TYPEFACES { rel: 'preconnect', href: 'https://fonts.thawiang.com/' }, { rel: 'stylesheet', href: 'https://fonts.thawiang.com/open-sans/open-sans-less.css' }, { rel: 'stylesheet', href: 'https://fonts.thawiang.com/sarabun/sarabun.css' } ] }, }, // i18n: { // baseUrl: process.env.NUXT_PUBLIC_BASE_URL, // strategy: 'prefix', // defaultLocale: 'th', // locales: [ // { // code: 'th', // language: 'th-TH', // name: 'ภาษาไทย', // file: 'th.json', // isCatchallLocale: true, // }, // { // code: 'en', // language: 'en-US', // name: 'English', // file: 'en.json', // } // ], // detectBrowserLanguage: { // useCookie: true, // cookieKey: 'i18n_language', // fallbackLocale: 'th', // }, // vueI18n: 'i18n.config.ts', // } })