docscn

Files

A file tree with collapsible folders, for showing a project's structure in MDX.

layout.tsx
layout.tsx
[[...slug]]/page.tsx
package.json

Installation

npx shadcn@latest add @docscn/files

Usage

import { File, Files, Folder } from "@/components/docs/components/files";

<Files>
  <Folder name="app" defaultOpen>
    <File name="layout.tsx" />
  </Folder>
  <File name="package.json" />
</Files>

The docs block adds Files, Folder and File to your MDX components, which Fumadocs' opt-in remark-mdx-files plugin needs: it turns files code blocks into these components.

Props

ComponentPropTypeDescription
FoldernamestringThe folder's name.
FolderdefaultOpenbooleanOpen the folder at first.
FolderdisabledbooleanKeep the folder from opening.
FilenamestringThe file's name.
FileiconReactNodeReplace the file icon.

Folders are built on shadcn/ui collapsible.