// nuxt.config.ts – HMS Licht & Ton Frontend Configuration import type { NuxtConfig } from "nuxt/schema"; export default defineNuxtConfig({ devtools: { enabled: false }, modules: ["@nuxtjs/tailwindcss", "@pinia/nuxt"], css: ["~/assets/css/main.css"], app: { head: { htmlAttrs: { lang: "de" }, meta: [ { charset: "utf-8" }, { name: "viewport", content: "width=device-width, initial-scale=1" }, { name: "robots", content: "noindex, nofollow, noarchive, nosnippet" }, { name: "theme-color", content: "#131313" }, { name: "description", content: "HMS Licht & Ton – Professionelle Veranstaltungstechnik aus Leipheim/Ellzee. Vermietung, Verkauf, Personal, Transport von Tontechnik und Lichttechnik." }, { name: "author", content: "Hammerschmidt u. Mössle GbR" }, ], link: [ { rel: "icon", type: "image/svg+xml", href: "/favicon.svg" }, { 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;800&display=swap", }, ], script: [ { type: "application/ld+json", children: JSON.stringify({ "@context": "https://schema.org", "@type": "LocalBusiness", name: "HMS Licht & Ton – Hammerschmidt u. Mössle GbR", description: "Professionelle Veranstaltungstechnik aus Leipheim/Ellzee. Vermietung, Verkauf, Personal, Transport.", address: { "@type": "PostalAddress", streetAddress: "Grockelhofen 10", addressLocality: "Leipheim", postalCode: "89340", addressCountry: "DE", }, telephone: "+498221204433", email: "info@hms-licht-ton.de", url: "https://hms.media-on.de", areaServed: "Süddeutschland", knowsAbout: ["Tontechnik", "Lichttechnik", "Rigging", "Veranstaltungstechnik"], }), }, ], }, }, runtimeConfig: { // Server-only: used by SSR to call backend in Docker network apiBase: process.env.API_BASE_URL || "http://backend:8000", public: { // Client-side: relative URL goes through Nuxt server proxy apiBase: "/api", }, }, routeRules: { "/mietkatalog": { ssr: true }, "/mietkatalog/**": { ssr: true }, "/warenkorb": { ssr: false }, "/mietanfrage": { ssr: false }, "/admin": { ssr: false }, }, typescript: { strict: true, typeCheck: false, }, tailwindcss: { cssPath: "~/assets/css/main.css", configPath: "tailwind.config.ts", }, nitro: { compressPublicAssets: true, routeRules: { "/api/**": { proxy: "http://backend:8000/api/**", }, }, }, });