T01: Frontend Foundation – Nuxt 3 + Tailwind + Design Tokens + Layout + Meta
- Nuxt 3 project with @nuxtjs/tailwindcss module - Tailwind CSS config with A0 Dark Theme design tokens (CSS custom properties) - AppHeader: sticky, logo, nav, phone, social icons, mobile burger menu - AppFooter: 4-column grid (Navigation, Kontakt, Rechtliches, Social) - HmsLogo: SVG with orange #EC6925 border - error.vue: 404 page with Seite nicht gefunden - robots.txt server route: Disallow: / - Meta: noindex, nofollow, noarchive, nosnippet - JSON-LD: LocalBusiness schema - OpenGraph tags - routeRules: SSR/CSR per route - Shared components: LoadingSkeleton, EmptyState, ErrorState, LegalContentPage, SpeakerIcon - 42 vitest tests passing - Build: 0 errors
This commit is contained in:
@@ -0,0 +1,24 @@
|
||||
<template>
|
||||
<div class="animate-pulse" :class="wrapperClass">
|
||||
<div
|
||||
v-for="n in count"
|
||||
:key="n"
|
||||
class="skeleton-shimmer rounded-md"
|
||||
:style="{ height: height, marginBottom: gap }"
|
||||
/>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script setup lang="ts">
|
||||
const props = withDefaults(defineProps<{
|
||||
count?: number;
|
||||
height?: string;
|
||||
gap?: string;
|
||||
wrapperClass?: string;
|
||||
}>(), {
|
||||
count: 3,
|
||||
height: "20px",
|
||||
gap: "12px",
|
||||
wrapperClass: "w-full",
|
||||
});
|
||||
</script>
|
||||
Reference in New Issue
Block a user