Files
hms-licht-ton/frontend/nuxt.config.ts
T
Implementation Engineer e9da21b57e feat(T06): Mietkatalog frontend – equipment list, detail, search/filter, SSR
- composables/useApi.ts: base API client with runtimeConfig
- composables/useEquipment.ts: equipment API wrapper (list, detail, categories)
- components/EquipmentCard.vue: card with image/placeholder, badge, name, price, add-to-cart
- pages/mietkatalog.vue: SSR list with search, category chips, sort, pagination, skeleton, empty/error states
- pages/mietkatalog/[id].vue: SSR detail with specs table, related items, breadcrumb, add-to-cart
- nuxt.config.ts: runtimeConfig with apiBase
- 101 vitest tests passing (5 files)
- Build: 0 errors, 2.09 MB
2026-07-10 00:54:40 +02:00

78 lines
2.7 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
// nuxt.config.ts HMS Licht & Ton Frontend Configuration
import type { NuxtConfig } from "nuxt/schema";
export default defineNuxtConfig({
devtools: { enabled: false },
modules: ["@nuxtjs/tailwindcss"],
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: {
apiBase: process.env.API_BASE_URL || "http://localhost:8000",
public: {
apiBase: process.env.API_BASE_URL || "http://localhost:8000",
},
},
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,
},
});