Source: https://seerepo.com/r/fuma-nama/fumadocs/built
Markdown source: https://seerepo.com/r/fuma-nama/fumadocs/built.md
Description: fumadocs is a TypeScript repo built with React, Vite, Astro, @astrojs/react, Next.js, and 4 more. It stores its data in meilisearch.

# What is fumadocs built with?

fumadocs is a TypeScript repo built with React, Vite, Astro, @astrojs/react, Next.js, and 4 more. It stores its data in meilisearch, uses AI through @ai-sdk/react, ai, and OpenRouter, makes its content with remark, remark-gfm, remark-rehype, remend, satteri, and 26 more, validates its data with json-schema-typed, Zod, and @standard-schema/spec, is tested with Vitest, deploys with @hono/node-server, and uses MCP and Sanity. It has 185,442 written lines, with 197 test files.

Read on November 9, 2026, at commit ff83733.

Repository: https://github.com/fuma-nama/fumadocs

## Support (/)

### Other

- **tinyexec**: 1 file

## Frontend (packages/ai-chat)

### The base

- **[React](https://seerepo.com/uses/react)**: 3 files · [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)

### Styles

- **[cn](https://seerepo.com/uses/cn)**: 1 file

### Interface

- **[Base UI](https://seerepo.com/uses/base-ui)**: 1 file

### Icons

- **[Lucide](https://seerepo.com/uses/lucide)**: 2 files

## Backend (packages/ai-chat)

### AI

- **[@ai-sdk/react](https://seerepo.com/uses/ai-sdk-react)**: 1 file
- **[ai](https://seerepo.com/uses/ai)**: 1 file

## Support (packages/ai-chat)

### Content

- **[remark](https://seerepo.com/uses/remark)**: 1 file
- **[remark-gfm](https://seerepo.com/uses/remark-gfm)**: 1 file
- **remark-rehype**: 1 file
- **remend**: 1 file

### Testing

- **Vitest**: 1 file

### Other

- **@fuma-translate/react**: 2 files

## Frontend (packages/astro)

### The base

- **[React](https://seerepo.com/uses/react)**: 1 file · [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)
- **[Vite](https://seerepo.com/uses/vite)**: 1 file · [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)

## Support (packages/astro)

### The base

- **[Astro](https://seerepo.com/uses/astro)**: 4 files
- **@astrojs/react**: 1 file

### Content

- **satteri**: 3 files
- **@astrojs/markdown-satteri**: 1 file
- **[yaml](https://seerepo.com/uses/yaml)**: 1 file

### Testing

- **Vitest**: 2 files

### Tools

- **@astrojs/mdx**: 1 file

### Other

- **devalue**: 2 files

## Frontend (packages/asyncapi)

### The base

- **[React](https://seerepo.com/uses/react)**: 21 files · [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)

### Styles

- **[Tailwind CSS](https://seerepo.com/uses/tailwind-css)**
- **[cn](https://seerepo.com/uses/cn)**: 1 file

### Interface

- **[Base UI](https://seerepo.com/uses/base-ui)**: 1 file

### Icons

- **[Lucide](https://seerepo.com/uses/lucide)**: 5 files

## Support (packages/asyncapi)

### Content

- **[yaml](https://seerepo.com/uses/yaml)**: 1 file

### Validation

- **json-schema-typed**: 1 file

### Testing

- **Vitest**: 6 files

### Tools

- **chokidar**: 1 file

### Other

- **@fuma-translate/react**: 15 files
- **[Scalar](https://seerepo.com/uses/scalar)**: 5 files
- **github-slugger**: 2 files
- **eventsource-parser**: 1 file

## Frontend (packages/base-ui)

### The base

- **[React](https://seerepo.com/uses/react)**: 104 files · [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)
- **[Next.js](https://seerepo.com/uses/nextjs)**: 1 file

### Styles

- **[Tailwind CSS](https://seerepo.com/uses/tailwind-css)**
- **[class-variance-authority](https://seerepo.com/uses/class-variance-authority)**: 12 files
- **[next-themes](https://seerepo.com/uses/next-themes)**: 3 files
- **[cn](https://seerepo.com/uses/cn)**: 1 file

### Interface

- **[Base UI](https://seerepo.com/uses/base-ui)**: 17 files
- **[motion](https://seerepo.com/uses/motion)**: 4 files
- **react-remove-scroll**: 2 files
- **[scroll-into-view-if-needed](https://seerepo.com/uses/scroll-into-view-if-needed)**: 2 files
- **react-medium-image-zoom**: 1 file
- **takumi-js**: 1 file

### Icons

- **[Lucide](https://seerepo.com/uses/lucide)**: 52 files

## Support (packages/base-ui)

### Content

- **[shiki](https://seerepo.com/uses/shiki)**: 1 file

### Other

- **@fuma-translate/react**: 40 files

## Frontend (packages/basehub)

### The base

- **[React](https://seerepo.com/uses/react)**: 1 file · [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)

## Support (packages/changelog)

### Testing

- **Vitest**: 1 file

## Frontend (packages/cli)

### Interface

- **[@clack/prompts](https://seerepo.com/uses/clack-prompts)**: 6 files

## Support (packages/cli)

### Testing

- **Vitest**: 4 files

### Tools

- **Babel**: 6 files
- **cac**: 2 files
- **magic-string**: 1 file

### Other

- **tinyexec**: 2 files

## Support (packages/content-collections)

### Content

- **@content-collections/core**: 2 files
- **[unified](https://seerepo.com/uses/unified)**: 1 file

### Validation

- **[Zod](https://seerepo.com/uses/zod)**: 1 file

## Support (packages/content)

### Validation

- **[@standard-schema/spec](https://seerepo.com/uses/standard-schema-spec)**: 1 file

## Frontend (packages/core)

### The base

- **[React](https://seerepo.com/uses/react)**: 38 files · [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)
- **[Next.js](https://seerepo.com/uses/nextjs)**: 3 files
- **[React Router](https://seerepo.com/uses/react-router)**: 1 file
- **[TanStack](https://seerepo.com/uses/tanstack)**: 1 file
- **waku**: 1 file

### Interface

- **@pierre/highlights**: 1 file
- **[scroll-into-view-if-needed](https://seerepo.com/uses/scroll-into-view-if-needed)**: 1 file

### Icons

- **[Lucide](https://seerepo.com/uses/lucide)**: 1 file

## Backend (packages/core)

### Data

- **meilisearch**: 2 files

### Services

- **[MCP](https://seerepo.com/uses/mcp)**: 1 file · [packages/core/src/mcp.ts, line 2](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/core/src/mcp.ts#L2)

## Support (packages/core)

### Content

- **[unified](https://seerepo.com/uses/unified)**: 21 files
- **[mdast-util-mdx](https://seerepo.com/uses/mdast-util-mdx)**: 14 files
- **[shiki](https://seerepo.com/uses/shiki)**: 9 files
- **[vfile](https://seerepo.com/uses/vfile)**: 7 files
- **[remark](https://seerepo.com/uses/remark)**: 4 files
- **[remark-gfm](https://seerepo.com/uses/remark-gfm)**: 4 files
- **remark-mdx**: 3 files
- **remark-directive**: 2 files
- **@shikijs/transformers**: 1 file
- **hast-util-to-jsx-runtime**: 1 file
- **micromark**: 1 file
- **micromark-extension-gfm-table**: 1 file
- **[rehype-raw](https://seerepo.com/uses/rehype-raw)**: 1 file
- **remark-rehype**: 1 file
- **[yaml](https://seerepo.com/uses/yaml)**: 1 file

### Validation

- **[Zod](https://seerepo.com/uses/zod)**: 2 files

### Testing

- **Vitest**: 15 files

### Tools

- **MDX**: 2 files
- **estree-util-value-to-estree**: 1 file
- **hast-util-to-estree**: 1 file
- **npm-to-yarn**: 1 file
- **tinyglobby**: 1 file

### Other

- **zbsearch**: 5 files
- **github-slugger**: 3 files
- **algoliasearch**: 2 files
- **flexsearch**: 2 files
- **@formatjs/intl-localematcher**: 1 file
- **path-to-regexp**: 1 file

## Frontend (packages/create-app)

### Interface

- **[@clack/prompts](https://seerepo.com/uses/clack-prompts)**: 1 file

## Support (packages/create-app)

### Tools

- **cac**: 1 file

### Other

- **tinyexec**: 2 files

## Support (packages/doc-gen)

### Content

- **[unified](https://seerepo.com/uses/unified)**: 4 files
- **[mdast-util-mdx](https://seerepo.com/uses/mdast-util-mdx)**: 1 file
- **[remark](https://seerepo.com/uses/remark)**: 1 file
- **[vfile](https://seerepo.com/uses/vfile)**: 1 file

### Validation

- **[Zod](https://seerepo.com/uses/zod)**: 1 file

### Testing

- **Vitest**: 1 file

### Tools

- **MDX**: 1 file
- **npm-to-yarn**: 1 file

## Support (packages/epub)

### Content

- **[rehype-stringify](https://seerepo.com/uses/rehype-stringify)**: 1 file
- **[remark](https://seerepo.com/uses/remark)**: 1 file
- **[remark-gfm](https://seerepo.com/uses/remark-gfm)**: 1 file
- **remark-rehype**: 1 file
- **[unified](https://seerepo.com/uses/unified)**: 1 file

## Frontend (packages/graphql)

### The base

- **[React](https://seerepo.com/uses/react)**: 25 files · [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)

### Styles

- **[Tailwind CSS](https://seerepo.com/uses/tailwind-css)**
- **[cn](https://seerepo.com/uses/cn)**: 1 file

### Interface

- **[Base UI](https://seerepo.com/uses/base-ui)**: 2 files

### Icons

- **[Lucide](https://seerepo.com/uses/lucide)**: 7 files

## Support (packages/graphql)

### Testing

- **Vitest**: 12 files

### Other

- **GraphQL**: 22 files
- **@fuma-translate/react**: 10 files
- **eventsource-parser**: 1 file
- **github-slugger**: 1 file

## Support (packages/image-size)

### Testing

- **Vitest**: 1 file

## Frontend (packages/json-schema)

### The base

- **[React](https://seerepo.com/uses/react)**: 2 files · [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)

## Support (packages/json-schema)

### Validation

- **json-schema-typed**: 1 file

### Testing

- **Vitest**: 6 files

### Other

- **[Scalar](https://seerepo.com/uses/scalar)**: 2 files
- **@fuma-translate/react**: 1 file

## Frontend (packages/local-content)

### The base

- **[React](https://seerepo.com/uses/react)**: 1 file · [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)
- **[Vite](https://seerepo.com/uses/vite)**: 1 file · [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)

## Support (packages/local-content)

### Testing

- **Vitest**: 1 file

### Tools

- **chokidar**: 1 file
- **tinyglobby**: 1 file

### Other

- **picomatch**: 2 files
- **ws**: 2 files

## Frontend (packages/local-html)

### The base

- **[React](https://seerepo.com/uses/react)**: 1 file · [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)

## Support (packages/local-html)

### Content

- **hast-util-from-html**: 1 file
- **[shiki](https://seerepo.com/uses/shiki)**: 1 file
- **[unified](https://seerepo.com/uses/unified)**: 1 file

### Validation

- **[@standard-schema/spec](https://seerepo.com/uses/standard-schema-spec)**: 1 file

### Testing

- **Vitest**: 1 file

### Other

- **github-slugger**: 1 file

## Frontend (packages/local-md)

### The base

- **[React](https://seerepo.com/uses/react)**: 3 files · [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)

## Support (packages/local-md)

### Content

- **[unified](https://seerepo.com/uses/unified)**: 2 files
- **[remark](https://seerepo.com/uses/remark)**: 1 file
- **remark-rehype**: 1 file
- **[vfile](https://seerepo.com/uses/vfile)**: 1 file

### Validation

- **[@standard-schema/spec](https://seerepo.com/uses/standard-schema-spec)**: 1 file

### Testing

- **Vitest**: 1 file

### Tools

- **estree-util-build-jsx**: 1 file
- **MDX**: 1 file

## Frontend (packages/mdx-remote)

### The base

- **[React](https://seerepo.com/uses/react)**: 3 files · [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)

## Support (packages/mdx-remote)

### Content

- **[unified](https://seerepo.com/uses/unified)**: 1 file
- **[vfile](https://seerepo.com/uses/vfile)**: 1 file

### Testing

- **Vitest**: 1 file

### Tools

- **MDX**: 1 file
- **tinyglobby**: 1 file

## Frontend (packages/mdx)

### The base

- **[React](https://seerepo.com/uses/react)**: 6 files · [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)
- **[Vite](https://seerepo.com/uses/vite)**: 2 files · [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)
- **[Next.js](https://seerepo.com/uses/nextjs)**: 1 file

## Support (packages/mdx)

### Content

- **[unified](https://seerepo.com/uses/unified)**: 3 files
- **remark-directive**: 2 files
- **[vfile](https://seerepo.com/uses/vfile)**: 2 files
- **[mdast-util-from-markdown](https://seerepo.com/uses/mdast-util-from-markdown)**: 1 file
- **[mdast-util-mdx](https://seerepo.com/uses/mdast-util-mdx)**: 1 file
- **micromark-extension-mdxjs-esm**: 1 file
- **[remark](https://seerepo.com/uses/remark)**: 1 file
- **remark-mdx**: 1 file
- **satteri**: 1 file
- **unist-util-remove-position**: 1 file
- **[yaml](https://seerepo.com/uses/yaml)**: 1 file

### Validation

- **[@standard-schema/spec](https://seerepo.com/uses/standard-schema-spec)**: 5 files
- **[Zod](https://seerepo.com/uses/zod)**: 3 files

### Testing

- **Vitest**: 10 files

### Tools

- **Webpack**: 5 files
- **MDX**: 4 files
- **chokidar**: 3 files
- **esbuild**: 3 files
- **Rolldown**: 2 files
- **tinyglobby**: 2 files
- **@vitejs/plugin-rsc**: 1 file
- **acorn**: 1 file
- **acorn-jsx**: 1 file
- **estree-util-value-to-estree**: 1 file
- **magic-string**: 1 file

### Other

- **picomatch**: 3 files
- **picocolors**: 1 file
- **tinyexec**: 1 file

## Frontend (packages/notion)

### The base

- **[React](https://seerepo.com/uses/react)**: 6 files · [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)

### Styles

- **[cn](https://seerepo.com/uses/cn)**: 5 files

### Interface

- **[Base UI](https://seerepo.com/uses/base-ui)**: 2 files

### Icons

- **[Lucide](https://seerepo.com/uses/lucide)**: 3 files

## Support (packages/notion)

### Testing

- **Vitest**: 4 files

### Other

- **@notionhq/client**: 6 files

## Frontend (packages/obsidian)

### The base

- **[React](https://seerepo.com/uses/react)**: 4 files · [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)

### Styles

- **[cn](https://seerepo.com/uses/cn)**: 1 file

## Support (packages/obsidian)

### Content

- **[unified](https://seerepo.com/uses/unified)**: 6 files
- **[mdast-util-mdx](https://seerepo.com/uses/mdast-util-mdx)**: 3 files
- **[vfile](https://seerepo.com/uses/vfile)**: 2 files
- **[remark](https://seerepo.com/uses/remark)**: 1 file
- **[remark-parse](https://seerepo.com/uses/remark-parse)**: 1 file

### Validation

- **[@standard-schema/spec](https://seerepo.com/uses/standard-schema-spec)**: 1 file
- **[Zod](https://seerepo.com/uses/zod)**: 1 file

### Testing

- **Vitest**: 2 files

### Tools

- **tinyglobby**: 1 file

### Other

- **github-slugger**: 1 file

## Frontend (packages/openapi-standalone)

### The base

- **[Vite](https://seerepo.com/uses/vite)**: [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)
- **[React](https://seerepo.com/uses/react)**: 3 files · [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)

### Styles

- **[Tailwind CSS](https://seerepo.com/uses/tailwind-css)**

## Backend (packages/openapi-standalone)

### The base

- **[Hono](https://seerepo.com/uses/hono)**: 2 files · [in packages/openapi-standalone/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/openapi-standalone/package.json)

## Support (packages/openapi-standalone)

### Content

- **[remark](https://seerepo.com/uses/remark)**: 1 file
- **remark-rehype**: 1 file

### Deploy

- **[@hono/node-server](https://seerepo.com/uses/hono-node-server)**: 1 file

## Frontend (packages/openapi)

### The base

- **[React](https://seerepo.com/uses/react)**: 23 files · [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)

### Styles

- **[cn](https://seerepo.com/uses/cn)**: 1 file

### Interface

- **[Base UI](https://seerepo.com/uses/base-ui)**: 3 files
- **@scalar/api-client-react**: 1 file

### Icons

- **[Lucide](https://seerepo.com/uses/lucide)**: 6 files

## Support (packages/openapi)

### Content

- **xml-js**: 2 files
- **[shiki](https://seerepo.com/uses/shiki)**: 1 file
- **[yaml](https://seerepo.com/uses/yaml)**: 1 file

### Testing

- **Vitest**: 12 files

### Tools

- **chokidar**: 1 file

### Other

- **@fuma-translate/react**: 10 files
- **[Scalar](https://seerepo.com/uses/scalar)**: 6 files
- **github-slugger**: 1 file
- **undici**: 1 file

## Frontend (packages/preview)

### The base

- **[Vite](https://seerepo.com/uses/vite)**: [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)
- **[React](https://seerepo.com/uses/react)**: 9 files · [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)
- **waku**: 4 files

### Styles

- **[Tailwind CSS](https://seerepo.com/uses/tailwind-css)**
- **[cn](https://seerepo.com/uses/cn)**: 1 file

### Interface

- **beautiful-mermaid**: 1 file
- **takumi-js**: 1 file

## Backend (packages/preview)

### AI

- **[ai](https://seerepo.com/uses/ai)**: 3 files
- **[@ai-sdk/react](https://seerepo.com/uses/ai-sdk-react)**: 1 file
- **[OpenRouter](https://seerepo.com/uses/openrouter)**: 1 file

## Support (packages/preview)

### Content

- **[katex](https://seerepo.com/uses/katex)**: 1 file
- **[rehype-katex](https://seerepo.com/uses/rehype-katex)**: 1 file
- **[remark](https://seerepo.com/uses/remark)**: 1 file
- **[remark-math](https://seerepo.com/uses/remark-math)**: 1 file
- **remark-rehype**: 1 file
- **[unified](https://seerepo.com/uses/unified)**: 1 file
- **[vfile](https://seerepo.com/uses/vfile)**: 1 file

### Validation

- **[Zod](https://seerepo.com/uses/zod)**: 7 files

### Deploy

- **[@hono/node-server](https://seerepo.com/uses/hono-node-server)**: 1 file

### Tools

- **cac**: 1 file
- **chokidar**: 1 file
- **ignore**: 1 file
- **tinyglobby**: 1 file

### Other

- **.ENV**: 1 file
- **flexsearch**: 1 file
- **ws**: 1 file

## Frontend (packages/python)

### The base

- **[React](https://seerepo.com/uses/react)**: 3 files · [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)

### Styles

- **[cn](https://seerepo.com/uses/cn)**: 3 files
- **[class-variance-authority](https://seerepo.com/uses/class-variance-authority)**: 2 files

### Interface

- **[Base UI](https://seerepo.com/uses/base-ui)**: 1 file

### Icons

- **[Lucide](https://seerepo.com/uses/lucide)**: 1 file

## Support (packages/python)

### Content

- **[mdast-util-mdx](https://seerepo.com/uses/mdast-util-mdx)**: 1 file
- **[remark](https://seerepo.com/uses/remark)**: 1 file
- **remark-mdx**: 1 file
- **remark-rehype**: 1 file
- **[shiki](https://seerepo.com/uses/shiki)**: 1 file
- **[unified](https://seerepo.com/uses/unified)**: 1 file
- **[vfile](https://seerepo.com/uses/vfile)**: 1 file

### Testing

- **Vitest**: 1 file

### Tools

- **griffe**: 5 files

## Frontend (packages/radix-ui)

### The base

- **[React](https://seerepo.com/uses/react)**: 98 files · [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)
- **[Next.js](https://seerepo.com/uses/nextjs)**: 1 file

### Styles

- **[Tailwind CSS](https://seerepo.com/uses/tailwind-css)**
- **[class-variance-authority](https://seerepo.com/uses/class-variance-authority)**: 11 files
- **[next-themes](https://seerepo.com/uses/next-themes)**: 2 files
- **[cn](https://seerepo.com/uses/cn)**: 1 file

### Interface

- **[Radix UI](https://seerepo.com/uses/radix-ui)**: 9 files
- **[motion](https://seerepo.com/uses/motion)**: 4 files
- **react-remove-scroll**: 2 files
- **[scroll-into-view-if-needed](https://seerepo.com/uses/scroll-into-view-if-needed)**: 2 files
- **react-medium-image-zoom**: 1 file
- **takumi-js**: 1 file

### Icons

- **[Lucide](https://seerepo.com/uses/lucide)**: 46 files

## Support (packages/radix-ui)

### Content

- **[shiki](https://seerepo.com/uses/shiki)**: 1 file

### Testing

- **Vitest**: 4 files

### Other

- **@fuma-translate/react**: 35 files

## Frontend (packages/sanity)

### The base

- **[React](https://seerepo.com/uses/react)**: 2 files · [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)

### Interface

- **@portabletext/react**: 8 files

## Backend (packages/sanity)

### Data

- **Sanity**: 1 file · [packages/sanity/src/index.ts, line 8](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/sanity/src/index.ts#L8)

## Support (packages/sanity)

### Content

- **next-sanity**: 1 file

### Testing

- **Vitest**: 2 files

## Frontend (packages/satteri)

### The base

- **[React](https://seerepo.com/uses/react)**: 1 file · [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)

## Support (packages/satteri)

### Content

- **satteri**: 26 files
- **[katex](https://seerepo.com/uses/katex)**: 1 file
- **[shiki](https://seerepo.com/uses/shiki)**: 1 file

### Validation

- **[@standard-schema/spec](https://seerepo.com/uses/standard-schema-spec)**: 1 file

### Testing

- **Vitest**: 19 files

### Tools

- **hast-util-to-estree**: 1 file
- **npm-to-yarn**: 1 file
- **tinyglobby**: 1 file

### Other

- **github-slugger**: 3 files

## Frontend (packages/shadcn)

### Styles

- **[Tailwind CSS](https://seerepo.com/uses/tailwind-css)**

### Interface

- **shadcn**: 1 file

## Support (packages/shadcn)

### Content

- **@shikijs/transformers**: 1 file
- **[shiki](https://seerepo.com/uses/shiki)**: 1 file

## Frontend (packages/shared-api)

### The base

- **[React](https://seerepo.com/uses/react)**: 21 files · [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)

### Styles

- **[class-variance-authority](https://seerepo.com/uses/class-variance-authority)**: 1 file
- **[cn](https://seerepo.com/uses/cn)**: 1 file

### Interface

- **[Base UI](https://seerepo.com/uses/base-ui)**: 8 files

### Icons

- **[Lucide](https://seerepo.com/uses/lucide)**: 11 files

## Support (packages/shared-api)

### Content

- **[remark](https://seerepo.com/uses/remark)**: 1 file
- **remark-rehype**: 1 file
- **[shiki](https://seerepo.com/uses/shiki)**: 1 file

### Testing

- **Vitest**: 4 files

### Other

- **@fuma-translate/react**: 9 files
- **github-slugger**: 1 file
- **[Scalar](https://seerepo.com/uses/scalar)**: 1 file

## Support (packages/shared)

### Tools

- **tsdown**: 1 file

## Frontend (packages/stf)

### The base

- **[React](https://seerepo.com/uses/react)**: 1 file · [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)

## Support (packages/stf)

### Testing

- **Vitest**: 1 file

## Frontend (packages/story)

### The base

- **[React](https://seerepo.com/uses/react)**: 9 files · [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)
- **[Next.js](https://seerepo.com/uses/nextjs)**: 1 file
- **[Vite](https://seerepo.com/uses/vite)**: 1 file · [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)

### Styles

- **[Tailwind CSS](https://seerepo.com/uses/tailwind-css)**
- **[cn](https://seerepo.com/uses/cn)**: 1 file

### Interface

- **[Base UI](https://seerepo.com/uses/base-ui)**: 2 files
- **[react-error-boundary](https://seerepo.com/uses/react-error-boundary)**: 1 file

### Icons

- **[Lucide](https://seerepo.com/uses/lucide)**: 4 files

## Support (packages/story)

### Tools

- **TypeScript**: 5 files
- **Webpack**: 2 files

### Other

- **@fuma-translate/react**: 3 files
- **@ungap/structured-clone**: 1 file

## Frontend (packages/tailwind)

### Styles

- **[postcss-selector-parser](https://seerepo.com/uses/postcss-selector-parser)**: 1 file
- **[Tailwind CSS](https://seerepo.com/uses/tailwind-css)**: 1 file

## Support (packages/tailwind)

### Testing

- **Vitest**: 1 file

### Other

- **[Fastify](https://seerepo.com/uses/fastify)**: 1 file

## Frontend (packages/twoslash)

### The base

- **[React](https://seerepo.com/uses/react)**: 1 file · [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)

### Styles

- **[cn](https://seerepo.com/uses/cn)**: 1 file

### Interface

- **[Base UI](https://seerepo.com/uses/base-ui)**: 1 file

## Support (packages/twoslash)

### Content

- **[shiki](https://seerepo.com/uses/shiki)**: 2 files
- **[mdast-util-from-markdown](https://seerepo.com/uses/mdast-util-from-markdown)**: 1 file
- **mdast-util-to-hast**: 1 file

### Testing

- **Vitest**: 2 files

### Tools

- **TypeScript**: 1 file

## Frontend (packages/typescript)

### The base

- **[React](https://seerepo.com/uses/react)**: 1 file · [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)

## Support (packages/typescript)

### Content

- **[mdast-util-mdx](https://seerepo.com/uses/mdast-util-mdx)**: 1 file
- **[remark](https://seerepo.com/uses/remark)**: 1 file
- **remark-rehype**: 1 file
- **[shiki](https://seerepo.com/uses/shiki)**: 1 file
- **[unified](https://seerepo.com/uses/unified)**: 1 file
- **[vfile](https://seerepo.com/uses/vfile)**: 1 file

### Testing

- **Vitest**: 2 files

### Tools

- **TypeScript**: 3 files
- **estree-util-value-to-estree**: 1 file
- **hast-util-to-estree**: 1 file
- **MDX**: 1 file

## Support (packages/vite)

### Testing

- **Vitest**: 1 file

## Other repos with a similar stack

- [supabase/supabase](https://seerepo.com/r/supabase/supabase/built): React, Vite, Next.js, React Router, MCP, cn, Lucide, ai, remark, remark-gfm, Tailwind CSS, class-variance-authority, next-themes, motion, scroll-into-view-if-needed, react-medium-image-zoom, shiki, unified, Zod, mdast-util-mdx, vfile, mdast-util-from-markdown, remark-parse, Radix UI, shadcn, react-error-boundary · [Compare](https://seerepo.com/compare/fuma-nama/fumadocs/vs/supabase/supabase)
- [CherryHQ/cherry-studio](https://seerepo.com/r/CherryHQ/cherry-studio/built): React, Vite, TanStack, MCP, Lucide, ai, remark-gfm, yaml, Tailwind CSS, class-variance-authority, motion, unified, Zod, @pierre/highlights, rehype-stringify, mdast-util-from-markdown, remark-parse, OpenRouter, katex, remark-math, Radix UI, react-error-boundary · [Compare](https://seerepo.com/compare/CherryHQ/cherry-studio/vs/fuma-nama/fumadocs)
- [shadcn-ui/ui](https://seerepo.com/r/shadcn-ui/ui/built): React, Vite, Next.js, React Router, TanStack, MCP, cn, Base UI, Lucide, @ai-sdk/react, ai, Tailwind CSS, class-variance-authority, next-themes, motion, shiki, Zod, Radix UI, postcss-selector-parser · [Compare](https://seerepo.com/compare/fuma-nama/fumadocs/vs/shadcn-ui/ui)
- [withastro/astro](https://seerepo.com/r/withastro/astro/built): React, Vite, Hono, remark, remark-gfm, satteri, yaml, shiki, @clack/prompts, unified, Zod, mdast-util-mdx, vfile, rehype-raw, rehype-stringify, hast-util-from-html, unist-util-remove-position, remark-parse, remark-math · [Compare](https://seerepo.com/compare/fuma-nama/fumadocs/vs/withastro/astro)
- [multica-ai/multica](https://seerepo.com/r/multica-ai/multica/built): React, Next.js, TanStack, Base UI, remark-gfm, yaml, Tailwind CSS, class-variance-authority, next-themes, motion, shiki, Zod, micromark-extension-gfm-table, rehype-raw, mdast-util-from-markdown, katex, rehype-katex, remark-math · [Compare](https://seerepo.com/compare/fuma-nama/fumadocs/vs/multica-ai/multica)
- [anomalyco/opencode](https://seerepo.com/r/anomalyco/opencode/built): React, Vite, Astro, TanStack, MCP, Hono, remark-gfm, yaml, Tailwind CSS, shiki, @clack/prompts, Zod, @standard-schema/spec, @pierre/highlights, vfile, micromark, katex · [Compare](https://seerepo.com/compare/anomalyco/opencode/vs/fuma-nama/fumadocs)

## Frequently asked questions

### What language is fumadocs written in?

fumadocs is written in TypeScript, with 185,442 written lines.

### What framework does fumadocs use?

fumadocs is built with React, Vite, Astro, @astrojs/react, Next.js, React Router, TanStack, waku, and Hono.

The proof: [in packages/preview/package.json](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/preview/package.json)

### What database does fumadocs use?

fumadocs stores its data in meilisearch.

### Does fumadocs use AI?

Yes. fumadocs uses AI through @ai-sdk/react, ai, and OpenRouter.

### What services does fumadocs use?

fumadocs uses MCP and Sanity.

The proof: [packages/core/src/mcp.ts, line 2](https://github.com/fuma-nama/fumadocs/blob/ff837337aca13c42a859b507f31461584c56a87b/packages/core/src/mcp.ts#L2)

### Does fumadocs have tests?

Yes. fumadocs has 197 test files and is tested with Vitest.

### Which repos have a stack like fumadocs's?

The ones that share most of its stack: supabase/supabase, CherryHQ/cherry-studio, and shadcn-ui/ui.

## What is your repo built with?

Any public repo, with no account: https://seerepo.com/r/owner/repo/built, with the owner and name it has on GitHub.
