81 lines
2.1 KiB
TypeScript
81 lines
2.1 KiB
TypeScript
import { defineNuxtConfig } from "nuxt/config";
|
|
// Tailwind v4 is configured via postcss.config.mjs
|
|
// https://nuxt.com/docs/api/configuration/nuxt-config
|
|
export default defineNuxtConfig({
|
|
compatibilityDate: "2025-07-15",
|
|
devtools: { enabled: true },
|
|
devServer: {
|
|
port: 3004,
|
|
},
|
|
|
|
// Disable SSR to avoid hydration mismatches during wizard work
|
|
ssr: false,
|
|
|
|
// Strict TypeScript
|
|
typescript: {
|
|
strict: true,
|
|
},
|
|
|
|
// Global CSS (use srcDir-relative path)
|
|
css: ["~/assets/css/main.css"],
|
|
|
|
// PostCSS configured separately
|
|
|
|
// Vite plugin not required for basics; rely on PostCSS and @nuxt/ui
|
|
|
|
modules: ["@pinia/nuxt", "@nuxtjs/color-mode", "@nuxt/ui"],
|
|
|
|
// Redirect old Templates landing to Wizards (keep detail routes working)
|
|
routeRules: {
|
|
"/templates": { redirect: { to: "/wizards", statusCode: 301 } },
|
|
"/wizard": { redirect: { to: "/coop-planner", statusCode: 301 } },
|
|
},
|
|
|
|
colorMode: {
|
|
preference: "system",
|
|
fallback: "light",
|
|
classSuffix: "",
|
|
dataValue: "dark",
|
|
},
|
|
|
|
// Google Fonts
|
|
app: {
|
|
head: {
|
|
link: [
|
|
{
|
|
rel: "preconnect",
|
|
href: "https://fonts.googleapis.com",
|
|
},
|
|
{
|
|
rel: "preconnect",
|
|
href: "https://fonts.gstatic.com",
|
|
crossorigin: "",
|
|
},
|
|
{
|
|
rel: "stylesheet",
|
|
href: "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap",
|
|
},
|
|
{
|
|
rel: "stylesheet",
|
|
href: "https://fonts.googleapis.com/css2?family=Ubuntu:wght@400;500;700&display=swap",
|
|
},
|
|
{
|
|
rel: "stylesheet",
|
|
href: "https://fonts.googleapis.com/css2?family=Source+Serif+4:wght@400;500;600;700&display=swap",
|
|
},
|
|
],
|
|
},
|
|
},
|
|
|
|
// Runtime configuration for formatting
|
|
runtimeConfig: {
|
|
public: {
|
|
appCurrency: process.env.APP_CURRENCY || "EUR",
|
|
appLocale: process.env.APP_LOCALE || "en-CA",
|
|
appDecimalPlaces: process.env.APP_DECIMAL_PLACES || "2",
|
|
appName: process.env.APP_NAME || "Urgent Tools",
|
|
},
|
|
},
|
|
|
|
// Nuxt UI minimal theme customizations live in app.config.ts
|
|
});
|