elearning/Frontend-Learner/nuxt.config.ts

65 lines
1.5 KiB
TypeScript
Raw Normal View History

2026-01-13 10:46:40 +07:00
// Nuxt 3 + Quasar + Tailwind + TypeScript
// Configuration for E-Learning Platform
export default defineNuxtConfig({
modules: ["nuxt-quasar-ui", "@nuxtjs/tailwindcss", "@nuxtjs/i18n"],
// i18n Configuration
i18n: {
strategy: 'no_prefix',
defaultLocale: 'th',
locales: [
{ code: 'th', name: 'ไทย', iso: 'th-TH' },
{ code: 'en', name: 'English', iso: 'en-US' }
],
vueI18n: './i18n.config.ts',
detectBrowserLanguage: {
useCookie: true,
cookieKey: 'i18n_redirected',
redirectOn: 'root'
}
},
2026-01-19 15:14:30 +07:00
css: ["~/assets/css/main.css"],
2026-01-13 10:46:40 +07:00
typescript: {
2026-01-19 15:14:30 +07:00
strict: true,
2026-01-13 10:46:40 +07:00
},
quasar: {
2026-01-19 15:14:30 +07:00
plugins: ["Notify"],
2026-01-13 10:46:40 +07:00
config: {
brand: {
2026-01-19 15:14:30 +07:00
primary: "#4b82f7",
secondary: "#2f5ed7",
accent: "#44d4a8",
dark: "#0f1827",
},
},
2026-01-13 10:46:40 +07:00
},
components: [
{
2026-01-19 15:14:30 +07:00
path: "~/components",
pathPrefix: false,
},
2026-01-13 10:46:40 +07:00
],
app: {
head: {
htmlAttrs: {
2026-01-19 15:14:30 +07:00
lang: 'th',
2026-01-13 10:46:40 +07:00
},
2026-01-19 15:14:30 +07:00
title: "E-Learning System",
meta: [
{ name: "viewport", content: "width=device-width, initial-scale=1" },
],
2026-01-13 10:46:40 +07:00
link: [
{
2026-01-19 15:14:30 +07:00
rel: "stylesheet",
href: "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800;900&family=Prompt:wght@300;400;500;600;700;800;900&family=Sarabun:wght@300;400;500;600;700;800&display=swap",
},
],
},
2026-01-13 10:46:40 +07:00
},
2026-01-14 15:15:31 +07:00
runtimeConfig: {
public: {
apiBase: process.env.NUXT_PUBLIC_API_BASE || 'http://localhost:4000/api'
}
}
2026-01-19 15:14:30 +07:00
});