Перейти к содержимому

Введение

Onedocs — это набор макетов, компонентов и вспомогательных функций для сайтов документации на Next.js и Fumadocs. Вы пишете Markdown, описываете сайт в одном файле конфигурации, а Onedocs предоставляет оболочку документации, главную страницу и маршруты SEO.

Решение предназначено для отдельных сайтов документации, а не для добавления документации в существующее приложение.

Что добавляет Onedocs

В дополнение к Fumadocs пакет onedocs предоставляет:

  • Макеты — DocsLayout и DocsPage оборачивают макет документации Fumadocs UI, добавляя боковую панель, поиск, переключатель темы и оглавление. HomePage отображает целевую страницу с первым экраном, командами установки, описанием функций и подвалом.
  • Один файл конфигурации — в onedocs.config.ts задаются заголовок, описание, логотип, favicon, ссылки навигации, подвал и содержимое главной страницы.
  • Компоненты MDX — mdxComponents регистрирует выноски, вкладки, карточки, шаги, аккордеоны, деревья файлов, увеличение изображений и таблицы типов, поэтому страницы используют их без импорта.
  • Пресет CSS — один импорт подключает Tailwind CSS v4, тему Fumadocs UI и стили макета Onedocs.
  • Вспомогательные функции SEO — функции для sitemap.xml, robots.txt, llms.txt, llms-full.txt, метаданных страниц и изображений Open Graph.

Что нужно настроить самостоятельно

Onedocs не включает в комплект Next.js или Fumadocs. Это одноранговые зависимости, которые нужно установить рядом с ним:

Командная оболочка
npm install onedocs fumadocs-core fumadocs-mdx fumadocs-ui lucide-react@0.562 next react react-dom

Также понадобятся Tailwind CSS v4, Node.js 20.9 или новее и около десяти небольших файлов: конфигурация Next.js и Fumadocs MDX, источник контента, корневой макет, макет документации и маршрут страницы документации. В руководстве Начало работы показан каждый из них.

Где задаются параметры

Что Где
Заголовок сайта, логотип, навигация, подвал onedocs.config.ts, см. Конфигурация
Первый экран и функции главной страницы homepage в onedocs.config.ts, отображается компонентом HomePage в src/app/page.tsx
Макет и страницы документации src/app/docs/layout.tsx и src/app/docs/[[...slug]]/page.tsx, см. Начало работы
Папка контента и порядок боковой панели source.config.ts и content/docs/meta.json
Компоненты MDX mdxComponents, см. Компоненты
Поиск, карта сайта, robots.txt, llms.txt Файлы маршрутов в src/app/, см. SEO и поиск
Метаданные и изображения Open Graph onedocs/metadata и onedocs/og, см. API Reference

Философия

  • Сначала Markdown — пишите .md или .mdx и получайте документацию
  • Один файл конфигурации — общие настройки сайта хранятся в onedocs.config.ts
  • Возможность расширения — нужен больший контроль? Используйте напрямую Fumadocs

Начните отсюда