Збірка документації — рутина, яку багато хто відкладає. Docusaurus гальмує на великих проєктах (500 сторінок збираються 5 хвилин), GitBook коштує грошей, а самописне рішення віднімає дні. VitePress вирішує ці проблеми: статика на Vite та Vue 3, час збірки — секунди, а не хвилини. Ми налаштуємо такий сайт під ключ: від структури до деплою. Отримайте консультацію, щоб обговорити ваш проєкт.
Чому VitePress підходить для документації?
VitePress — не просто генератор, а екосистема для технічної документації. Він швидший за аналоги при збірці (3 секунди на 200 сторінок), нативно підтримує Vue-компоненти в Markdown і легко налаштовується. Наприклад, згідно з документацією VitePress, hydration mismatch не виникає, оскільки це статика — немає SSR. LCP та FCP мінімальні завдяки попередньому завантаженню, що забезпечує ідеальні Core Web Vitals. Статичні файли потребують дешевого хостингу — економія до 70% порівняно з динамічними CMS.
Порівняння VitePress з іншими генераторами
| Генератор | Швидкість збірки | Кастомізація | Пошук | Вартість |
|---|---|---|---|---|
| VitePress | Миттєва | Vue-компоненти + CSS | Algolia / локальний | Безкоштовно |
| Docusaurus | Середня | React-компоненти | Algolia | Безкоштовно |
| GitBook | Повільна | Обмежена | Вбудований | Від $6.75/міс |
VitePress виграє за швидкістю та гнучкістю кастомізації, особливо якщо ви використовуєте Vue-стек.
Основні проблеми та їх вирішення
1. Генерація сайдбару з файлової структури. Ручний опис сайдбару для великого проекту — пекло. Ми автоматизуємо цей процес: пишемо скрипт, який сканує папки та будує меню. Код нижче читає всі .md файли, виключаючи index.md, і створює масив посилань.
// .vitepress/utils/generateSidebar.ts import fs from 'fs'; import path from 'path'; export function generateSidebar(dir: string) { const files = fs.readdirSync(dir); return files .filter(f => f.endsWith('.md') && f !== 'index.md') .map(f => ({ text: f.replace('.md', '').replace(/-/g, ' '), link: `/${path.relative('docs', path.join(dir, f)).replace('.md', '')}`, })); } 2. Налаштування повнотекстового пошуку. Вбудований пошук обмежений. Ми підключаємо Algolia: налаштовуємо краулер, конфігуруємо індекси (до 10 000 записів) та додаємо віджет. Це дає швидкий і точний пошук по всіх сторінках.
3. Кастомні Vue-компоненти в Markdown. Хочете інтерактивний приклад коду або калькулятор? Додаємо будь-який Vue-компонент у розмітку. VitePress підтримує SFC прямо в документації.
# Component Demo <script setup> import { ref } from 'vue' const count = ref(0) </script> <button @click="count++">Count: {{ count }}</button> ::: tip This is a tip container. ::: ::: warning This is a warning. ::: ::: code-group ```sh [npm] npm install my-package pnpm add my-package :::
### Як ми це робимо? Використовуємо стек: VitePress latest, Vue 3 Composition API, TypeScript, Tailwind для стилізації. Налаштовуємо конфіг під ваш бренд: логотип, фавікон, мета-теги. Підключаємо аналітику, карту сайту, RSS-стрічку, налаштовуємо CI/CD через GitHub Actions із кешуванням node_modules. Приклад повного конфігу: ```typescript // .vitepress/config.ts import { defineConfig } from 'vitepress'; export default defineConfig({ title: 'My Project', description: 'Documentation for My Project', lang: 'ru-RU', themeConfig: { nav: [ { text: 'Guide', link: '/guide/introduction' }, { text: 'API', link: '/api/overview' }, { text: 'Changelog', link: '/changelog' }, ], sidebar: { '/guide/': [ { text: 'Introduction', items: [ { text: 'What is My Project?', link: '/guide/introduction' }, { text: 'Getting Started', link: '/guide/getting-started' }, { text: 'Configuration', link: '/guide/configuration' }, ]}, { text: 'Advanced', items: [ { text: 'Plugins', link: '/guide/plugins' }, { text: 'API', link: '/guide/api' }, ]}, ], }, search: { provider: 'algolia', options: { appId: 'APP_ID', apiKey: 'API_KEY', indexName: 'my-project', }, }, editLink: { pattern: 'https://github.com/my-org/my-project/edit/main/docs/:path', text: 'Edit this page', }, socialLinks: [ { icon: 'github', link: 'https://github.com/my-org/my-project' }, ], }, markdown: { theme: { light: 'github-light', dark: 'github-dark' }, config(md) { md.use(require('markdown-it-container'), 'tip'); }, }, }); Як налаштувати пошук на сайті VitePress?
Пошук — критичний елемент документації. Ми налаштовуємо Algolia: створюємо додаток, завантажуємо краулер, конфігуруємо індексацію за селекторами. Потім інтегруємо віджет у тему. Альтернатива — локальний пошук через @algolia/autocomplete-js, але він потребує бекенду. Для статики Algolia оптимальний.
Процес роботи
- Аналітика — розбираємо структуру вашої документації, вирішуємо, що залишити, що переписати.
- Проектування — розробляємо схему сайдбару, навігацію, SEO-структуру URL.
- Реалізація — налаштовуємо VitePress, пишемо кастомні компоненти, підключаємо пошук.
- Тестування — перевіряємо всі посилання, адаптивність, продуктивність через Lighthouse.
- Деплой — вивантажуємо статику на ваш хостинг, налаштовуємо CI/CD (наприклад, через GitHub Actions).
Орієнтовні строки
| Етап | Строк |
|---|---|
| Базове налаштування + 1 розділ | 2 дні |
| Кастомна тема + пошук | 3 дні |
| Повний проект (5+ розділів) | 5 днів |
Вартість розраховується індивідуально, залежить від обсягу документації та складності кастомізації.
Що входить у роботу
- Готовий репозиторій з конфігурацією VitePress
- Кастомна тема (стилі, логотип, favicon)
- Автоматична генерація сайдбару
- Інтеграція пошуку (Algolia або локальний)
- Налаштування деплою на Vercel/Cloudflare Pages
- Документація по редагуванню контенту
- 1 година підтримки після запуску
Типові помилки при самостійному налаштуванні
- Неправильний
basepath — якщо сайт не в корені домену, потрібно вказатиbaseу конфігу, інакше ресурси не завантажаться. - Відсутність
editLink— користувачі не можуть запропонувати правки, що знижує довіру. - Ігнорування SEO — не прописані мета-теги, Open Graph, карта сайту, через що сайт погано індексується.
- Збірка сайдбару вручну — при додаванні нових сторінок забувають оновити конфіг. Автоматизація вирішує цю проблему.
Наш досвід
Ми займаємося розробкою сайтів документації більше 5 років. Реалізували проекти для API-сервісів, бібліотек, корпоративних продуктів. Гарантуємо, що сайт буде відповідати сучасним стандартам продуктивності та SEO.
Зв'яжіться з нами, щоб обговорити ваш проект. Ми оцінимо обсяг роботи та запропонуємо оптимальне рішення. Або просто замовте розробку — і отримайте готовий сайт документації в стислі строки.







