@farming-labs/nuxt-theme
v0.2.114
Published
Nuxt/Vue UI components for @farming-labs/docs — layout, sidebar, TOC, search, and theme toggle
Maintainers
Readme
@farming-labs/nuxt-theme
The Vue and Nuxt UI layer and theme preset package for
@farming-labs/docs.
It renders the docs shell, page content, table of contents, breadcrumbs, search, AI chat, API
reference switcher, and theme controls. Content loading and Nitro handlers live in
@farming-labs/nuxt.
Install
npm install @farming-labs/docs @farming-labs/nuxt @farming-labs/nuxt-theme @farming-labs/themeThe CLI can scaffold the complete Nuxt integration:
npx @farming-labs/docs@latest initConfigure the theme
// docs.config.ts
import { defineDocs } from "@farming-labs/docs";
import { fumadocs } from "@farming-labs/nuxt-theme";
export default defineDocs({
entry: "docs",
contentDir: "docs",
theme: fumadocs(),
nav: { title: "Docs", url: "/docs" },
});Add the matching shared CSS in nuxt.config.ts:
export default defineNuxtConfig({
css: ["@farming-labs/theme/default/css"],
});Render the docs UI
<script setup lang="ts">
import { DocsContent, DocsLayout } from "@farming-labs/nuxt-theme";
import config from "~/docs.config";
const { data } = await useFetch("/api/docs", {
query: { pathname: useRoute().path },
});
</script>
<template>
<DocsLayout :tree="data.tree" :config="config">
<DocsContent :data="data" :config="config" />
</DocsLayout>
</template>Main exports
DocsLayout,DocsContent, andDocsPageTableOfContents,Breadcrumb, andThemeToggleSearchDialog,FloatingAIChat, andApiReferenceSwitcher- Theme preset factories
Preset subpaths are fumadocs, pixel-border, darksharp, colorful, greentree, hardline,
concrete, command-grid, and ledger. The fumadocs preset uses
@farming-labs/theme/default/css; the other presets use the matching
@farming-labs/theme/<preset>/css entrypoint.
Learn more
License
MIT
