Вступ
Onedocs — це набір макетів, компонентів і хелперів для сайтів документації на Next.js та Fumadocs. Ви пишете Markdown, описуєте сайт в одному файлі конфігурації, а Onedocs надає оболонку документації, домашню сторінку та маршрути SEO.
Цей інструмент призначений для окремих сайтів документації, а не для додавання документації до наявного застосунку.
Що додає Onedocs
На додачу до Fumadocs пакет onedocs надає:
- Макети —
DocsLayoutіDocsPageобгортають макет документації Fumadocs UI із бічною панеллю, пошуком, перемикачем теми та змістом.HomePageвідображає цільову сторінку з головним блоком, командами встановлення, перевагами й нижнім колонтитулом. - Один файл конфігурації —
onedocs.config.tsмістить назву сайту, опис, логотип, посилання навігації, нижній колонтитул і вміст домашньої сторінки. - Компоненти 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