98 lines
3.8 KiB
TypeScript
Executable File
98 lines
3.8 KiB
TypeScript
Executable File
// 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'],
|
|
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' }
|
|
]
|
|
},
|
|
},
|
|
colorMode: {
|
|
preference: 'light'
|
|
}
|
|
// 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',
|
|
// }
|
|
}) |