This is the documentation site for @tresjs/post-processing built with Nuxt v4 and Nuxt UI v4.
This app provides docs for TresJS post-processing effects (pmndrs + three native) with:
- Nuxt v4 with compatibility mode enabled
- Nuxt UI v4 for beautiful, accessible components
- Nuxt Content for markdown-based content
- TresJS integration for 3D examples
- Full-text search functionality
- Dark mode support
- SEO optimization
app/
├── app.config.ts # UI theme and app configuration
├── app.vue # Root application component
├── error.vue # Error page component
├── assets/css/ # Global styles
├── components/ # Vue components
│ ├── content/ # MDC prose components
│ └── diagrams/ # Custom diagram components
├── composables/ # Composable functions (useNavigation)
├── layouts/ # Page layouts (docs.vue)
├── pages/ # Route pages
│ ├── index.vue # Landing page
│ └── [...slug].vue # Dynamic docs pages
└── utils/ # Utility functions
Content is organized in numbered directories for ordering:
content/
├── index.md # Landing page content
├── 1.getting-started/ # Introduction + installation
├── 2.api/
│ ├── 1.pmndrs/ # 29 pmndrs effect pages
│ └── 2.three/ # 6 three native effect pages
└── 3.advanced/ # Advanced guide
- Uses Nuxt UI v4 components (
UApp,UPage,UMain, etc.) - Custom theme configuration in
app.config.ts - Pink (
#FF7BAC) color scheme as primary, anchored at-300shade - Custom CSS variables for patterns and gradients
- Markdown with MDC (Markdown Components) syntax
- Collection-based content management
- Automatic table of contents generation
- Search integration
- Vue template compiler options configured for TresJS
- Support for 3D scene components
- Ready for interactive 3D examples
- Configured SEO meta tags
- Open Graph and Twitter card support
- Dynamic titles and descriptions
- Sitemap generation ready
Edit app/app.config.ts to customize:
ui: {
colors: {
primary: 'pink', // Post-processing brand palette
neutral: 'zinc',
},
}Edit app/composables/useNavigation.ts to modify header navigation links.
Content is organized using Nuxt Content collections defined in content.config.ts:
landing- Landing page (index.md)docs- All documentation pages
The nuxt-llms module is configured to generate LLM-friendly documentation at /llms.txt and /llms-full.txt.
- AppHeader - Site header with navigation, search, and color mode toggle
- AppFooter - Footer with links and copyright
- AppSide - Sidebar navigation for docs layout
- ProseA - Enhanced anchor links in markdown content
Custom SVG diagram components for technical documentation.
- Node.js 18+
- pnpm package manager
# Install dependencies
pnpm install
# Development server
pnpm dev
# Build for production
pnpm build
# Preview production build
pnpm preview
# Lint code
pnpm lint
# Type checking
pnpm typecheck- Tailwind CSS v4 via
@import 'tailwindcss' - Nuxt UI styles via
@import '@nuxt/ui' - Custom theme variables in
main.css - Pattern backgrounds (
.pattern-bg,.pattern-dot-bg)
Two custom color palettes are defined:
- Pink (50-950) - Primary brand color, anchor
#FF7BACat-300 - Teal (50-950) - Accent color for landing / highlights
Automatic dark mode with theme-aware pattern backgrounds and custom favicon switching.
---
title: Page Title
description: Page description for SEO
---
# Heading
Content here with **bold** and *italic* text.
::callout
Custom MDC component
::Use Vue components directly in markdown:
::block-hero
---
cta:
- Get started
- /getting-started
---
#title
Hero Title
#description
Hero description
::Configured for static site generation with Nitro prerendering:
nitro: {
prerender: {
routes: ['/'],
crawlLinks: true,
},
}Create .env file for environment-specific configuration (use .env.example as reference).
- Content Organization - Use numbered prefixes for ordering
- Component Naming - Use PascalCase for components
- MDC Syntax - Leverage MDC for rich content
- Accessibility - All UI components are accessible by default
- Performance - Images are optimized via @nuxt/image
- SEO - Always include title and description frontmatter
- Create new directory in
content/ - Add index page with navigation
- Update
useNavigation.tsif needed (Get Started, API, Advanced) - Update
llmsconfiguration innuxt.config.ts
- Add components in
app/components/ - MDC components go in
app/components/content/ - Auto-imported by Nuxt
- Update theme variables in
app.config.ts - Add custom CSS in
app/assets/css/main.css - Use Tailwind utilities for component styles
- Ensure Node.js 18+ is installed
- Clear
.nuxtandnode_modules, reinstall - Check
pnpm-workspace.yamlincludesapps/*
- Check frontmatter syntax
- Verify collection configuration in
content.config.ts - Ensure files use
.mdextension