"dependencies": { "@nuxt/ui": "^2.21.0", "nuxt": "^3.15.3", "vue": "latest", "vue-router": "latest" },
// https://nuxt.com/docs/api/configuration/nuxt-configexport default defineNuxtConfig({ compatibilityDate: '2024-11-01', devtools: { enabled: true }, pages: true, modules: ['@nuxt/ui'],})
// https://nuxt.com/docs/api/configuration/nuxt-configexport default defineNuxtConfig({ compatibilityDate: '2024-11-01', devtools: { enabled: true }, pages: true, modules: ['@nuxt/content', '@nuxt/ui']})
import { defineContentConfig, defineCollection } from '@nuxt/content'export default defineContentConfig({ collections: { content: defineCollection({ type: 'page', source: '**/*.md' }) }})
<script setup lang="ts"></script><template> <main class="container mx-auto relative mt-10 grid grid-cols-4"> <div class="col-span-1"> <h1 class="text-5xl p-1.5">T3</h1> <SideNavigation/> </div> <div class="col-span-3"> <MdContent/> </div> </main></template>
<script setup lang="ts">import type {ContentNavigationItem} from "@nuxt/content";const route = useRoute()const {data: main_navigation} = await useAsyncData(route.path, async () => { return queryCollectionNavigation('content')})</script><template> <div class="sticky top-10"> <nav v-for="main_nav of main_navigation" :key="main_nav.path" class="col-span-1">
<script setup lang="ts">const route = useRoute()const {data: page} = await useAsyncData(`page-${route.path}`, () => { return queryCollection('content').path(route.path).first()})if (!page.value) { throw createError({statusCode: 404, statusMessage: 'Page not found', fatal: true})}</script><template> <ContentRenderer v-if="page" :value="page" class="prose dark:prose-invert" /></template>