Files
shadcn-ui/apps/v4/next.config.mjs
shadcn 47c47eaed2 feat: add docs for base-ui components (#9304)
* feat: add base and radix docs

* feat: transform code for display

* fix

* fix

* fix

* fix

* fix

* chore: remove claude files

* fix

* fix

* fix

* chore: run format:write

* fix

* feat: add more examples

* fix

* feat: add aspect-ratio

* feat: add avatar

* feat: add badge

* feat: add breadcrumb

* fix

* feat: add button

* fix

* fix

* fix

* feat: add calendar and card

* feat: add carousel

* fix: chart

* feat: add checkbox

* feat: add collapsible

* feat: add combobox

* feat: add command

* feat: add context menu

* feat: add data-table dialog and drawer

* feat: dropdown-menu

* feat: add date-picker

* feat: add empty

* feat: add field and hover-card

* fix: input

* feat: add input

* feat: add input-group

* feat: add input-otp

* feat: add item

* feat: add kbd and label

* feat: add menubar

* feat: add native-select

* feat: add more components

* feat: more components

* feat: more components

* feat: add skeleton, slider and sonner

* feat: add spinner and switch

* feat: add more components

* fix: tabs

* fix: tabs

* feat: add docs for sidebar

* fix

* fix

* fi

* docs: update

* fix: create page

* fix

* fix

* chore: add changelog

* fix
2026-01-20 19:31:38 +04:00

126 lines
2.8 KiB
JavaScript

import { createMDX } from "fumadocs-mdx/next"
/** @type {import('next').NextConfig} */
const nextConfig = {
devIndicators: false,
typescript: {
ignoreBuildErrors: true,
},
outputFileTracingIncludes: {
"/*": ["./registry/**/*"],
},
images: {
remotePatterns: [
{
protocol: "https",
hostname: "avatars.githubusercontent.com",
},
{
protocol: "https",
hostname: "images.unsplash.com",
},
{
protocol: "https",
hostname: "avatar.vercel.sh",
},
],
},
experimental: {
turbopackFileSystemCacheForDev: true,
},
redirects() {
return [
// Form redirects to /docs/forms.
{
source: "/docs/components/form",
destination: "/docs/forms",
permanent: true,
},
{
source: "/docs/components/radix/form",
destination: "/docs/forms",
permanent: true,
},
{
source: "/docs/components/base/form",
destination: "/docs/forms",
permanent: true,
},
// Component redirects (default to radix).
{
source: "/docs/components/:name((?!radix|base|form)[^/]+)",
destination: "/docs/components/radix/:name",
permanent: false,
},
{
source: "/docs/components/:name((?!radix|base|form)[^/]+).md",
destination: "/docs/components/radix/:name.md",
permanent: false,
},
// Other redirects.
{
source: "/components",
destination: "/docs/components",
permanent: true,
},
{
source: "/docs/primitives/:path*",
destination: "/docs/components/:path*",
permanent: true,
},
{
source: "/figma",
destination: "/docs/figma",
permanent: true,
},
{
source: "/sidebar",
destination: "/docs/components/sidebar",
permanent: true,
},
{
source: "/react-19",
destination: "/docs/react-19",
permanent: true,
},
{
source: "/charts",
destination: "/charts/area",
permanent: true,
},
{
source: "/view/styles/:style/:name",
destination: "/view/:name",
permanent: true,
},
{
source: "/docs/:path*.mdx",
destination: "/docs/:path*.md",
permanent: true,
},
{
source: "/mcp",
destination: "/docs/mcp",
permanent: false,
},
{
source: "/directory",
destination: "/docs/directory",
permanent: false,
},
]
},
rewrites() {
return [
{
source: "/docs/:path*.md",
destination: "/llm/:path*",
},
]
},
}
const withMDX = createMDX({})
export default withMDX(nextConfig)