DocPlatform Community Edition
DocPlatform — це самостійно розгортувана документаційна платформа, яка поєднує багатофункціональний веб-редактор із двонаправленою синхронізацією git — упакована в єдиний бінарний файл без зовнішніх залежностей.
Пишіть у браузері. Відправляйте з IDE. Все залишається синхронізованим.
Чому DocPlatform
Документаційні платформи змушують вас обирати: відполірований веб-редактор із прив’язкою до постачальника або необроблені файли в git без інструментів для спільної роботи. DocPlatform усуває цей компроміс.
| Що ви отримуєте | Як це працює |
|---|---|
| Єдиний бінарний файл, нуль залежностей | Один Go бінарний файл містить редактор, базу даних, пошуковий рушій та git рушій. Без Node.js, без Postgres, без Elasticsearch. |
Кожна сторінка — це файл .md |
Ваш контент зберігається як Markdown файли у справжньому git репозиторії. Без пропрієтарних форматів. Без необхідності експорту. |
| Двонаправлена синхронізація git | Редагуйте в браузері — зміни автоматично фіксуються та відправляються. Відправляйте з IDE — веб-інтерфейс оновлюється автоматично. |
| Гарна опублікована документація | Один клік для публікації документаційного сайту з темною темою, підсвічуванням синтаксису та 7 вбудованими компонентами. |
| Командна співпраця | 6-рівнева ієрархія ролей, запрошення до робочих просторів, індикатори присутності в реальному часі та повний журнал аудиту. |
| Повнотекстовий пошук | Вбудований пошуковий рушій із миттєвими результатами. Не потрібно налаштовувати зовнішній сервіс. |
Для кого це
DocPlatform Community Edition створено для:
- Мейнтейнерів проєктів з відкритим кодом, які зберігають документацію проєкту в репозиторії, але хочуть кращий UX редагування, ніж необроблений Markdown на GitHub
- Внутрішніх платформних / DevEx команд, яким потрібна документація-як-код з контролем доступу та веб-редактором — а не щось одне
- Невеликих агенцій розробки, які керують кількома клієнтськими репозиторіями документації з резервним копіюванням через git та без доступного варіанту для самостійного розгортання
- Технічних письменників, яким потрібен відполірований досвід авторства з підтримкою контролю версій
- Індивідуальних розробників, яким потрібна особиста база знань із публічною публікацією — без підписки
Не орієнтовано на: великі підприємства з вимогами до SAML/SCIM (див. майбутню Enterprise Edition) або нетехнічні контентні команди без досвіду роботи з git.
Як це працює
┌──────────────────────────────────────────────────┐
│ DocPlatform (single binary) │
│ │
│ ┌────────────┐ ┌──────────┐ ┌────────────┐ │
│ │ Web Editor │ │ SQLite │ │ Bleve │ │
│ │ (Next.js) │ │ Database │ │ Search │ │
│ └──────┬──────┘ └────┬─────┘ └──────┬─────┘ │
│ │ │ │ │
│ └──────┬───────┴───────┬───────┘ │
│ │ │ │
│ ┌──────▼──────┐ ┌─────▼──────┐ │
│ │ Content │ │ Git │ │
│ │ Ledger │ │ Engine │ │
│ └──────┬──────┘ └─────┬──────┘ │
│ │ │ │
└─────────────────┼──────────────┼─────────────────┘
│ │
┌──────▼──────┐ ┌────▼──────┐
│ Filesystem │ │ Remote │
│ (.md files) │ │ Git Repo │
└─────────────┘ └───────────┘
Кожна зміна контенту — через веб-редактор, git push або API-виклик — проходить через Content Ledger, єдиний конвеєр, який підтримує файлову систему, базу даних та пошуковий індекс у ідеальній синхронізації.
Швидкий старт
Запустіть DocPlatform менш ніж за 5 хвилин:
# Download the binary (recommended — auto-detects platform)
curl -fsSL https://valoryx.org/install.sh | sh
# Initialize a workspace
docplatform init --workspace-name "My Docs" --slug my-docs
# Start the server
docplatform serve
Відкрийте http://localhost:3000 та зареєструйте першого користувача — він автоматично стає Super Admin.
Повне покрокове керівництво див. у розділі Початок роботи.
Огляд функцій
Основна платформа
- Багатофункціональний веб-редактор — редактор на базі Tiptap з формою frontmatter, перемикачем необробленого Markdown та автозбереженням
- Двонаправлена синхронізація git — Веб → git commit → push; CLI push → polling → оновлення в вебі
- Виявлення конфліктів — оптимістичне управління паралельністю на основі хешів із завантажуваним diff при колізії
- Повнотекстовий пошук — вбудований рушій Bleve з результатами, відфільтрованими за правами доступу, та ярликом Cmd+K
- Права доступу RBAC — 5 ролей: Super Admin, Admin, Editor, Commenter, Viewer
- Автентифікація — локальна (argon2id) + опціональна Google/GitHub OIDC
- Модель робочих просторів — Організація → Робочий простір → Сторінки з командними запрошеннями
- Журнал аудиту — кожна мутація логується із зазначенням користувача, часу та типу операції
Опублікована документація
- Публічний сайт — подача документації за адресою
/p/{workspace-slug}/{page-path} - Темна тема — автоматична світла/темна тема з ручним перемикачем
- 7 вбудованих компонентів — Callout, Code (200+ мов), Tabs, Accordion, Cards, Steps, API Block
- Готовність до SEO — OpenGraph теги, канонічні URL, sitemap.xml, robots.txt
Операції
- Діагностика — 9-точкова команда
doctorперевіряє узгодженість FS/DB, стан пошуку, биті посилання - Щоденні резервні копії — автоматичне резервне копіювання SQLite з налаштовуваним терміном зберігання
- Коректне завершення — чиста обробка сигналів для розгортань без простою
- Структуроване логування — JSON логи з ідентифікаторами запитів для спостережуваності
Системні вимоги
| Вимога | Мінімум | Рекомендовано |
|---|---|---|
| ОС | Linux (amd64/arm64), macOS (amd64/arm64) | Linux amd64 |
| Пам’ять | 128 МБ | 512 МБ |
| Диск | 200 МБ (бінарний файл + дані) | 1 ГБ |
| Git | Опціонально (для віддаленої синхронізації) | Git 2.30+ |
| Мережа | Не потрібна (працює офлайн) | Порт 3000 відкритий |
Що далі
| Керівництво | Опис |
|---|---|
| Початок роботи | Встановлення, налаштування та створення першого робочого простору |
| Посібники користувача | Вивчення редактора, синхронізації git, публікації та пошуку |
| Конфігурація | Змінні середовища, автентифікація, права доступу та налаштування робочих просторів |
| Розгортання | Виробниче розгортання з бінарним файлом, Docker або контейнерами |
| Довідник CLI | Повний довідник команд |
| Довідник API | REST API ендпоінти та приклади |
| Усунення несправностей | Поширені проблеми та способи їх вирішення |
Продуктивність
Виміряно на Apple M2, NVMe SSD, робочий простір на 1 000 сторінок:
| Операція | Затримка |
|---|---|
| Збереження сторінки (sync core) | < 30 мс |
| Рендеринг сторінки (API-відповідь) | < 50 мс p99 |
| Повнотекстовий пошук | < 8 мс p99 |
| Перевірка прав доступу | < 0,1 мс |
| Пакетна перевірка прав (100 сторінок) | < 1 мс |
| Холодний старт сервера | < 1 секунда |
| Повна реконсиляція (1 000 файлів) | < 5 секунд |
| Git commit (один файл) | < 2 секунди |
| Пам’ять (у стані спокою) | < 80 МБ |
| Пам’ять (10 одночасних користувачів) | < 200 МБ |
| Розмір бінарного файлу | ~120 МБ |
Порівняння DocPlatform
| Можливість | DocPlatform | GitBook | Notion | Docusaurus | Confluence | Wiki.js |
|---|---|---|---|---|---|---|
| Самостійне розгортання | Так | Ні | Ні | Так | Ні | Так |
| Підтримка git | Так | Часткова | Ні | Так | Ні | Ні |
| Веб-редактор | Так | Так | Так | Ні | Так | Так |
| Двонаправлена синхронізація git | Так | Ні | Ні | Н/З | Ні | Ні |
| Єдиний бінарний файл (нуль залежностей) | Так | Н/З | Н/З | Ні (Node.js) | Н/З | Docker |
| Вбудований RBAC | Так | Платний | Платний | Ні | Так | Так |
| Сайт опублікованої документації | Так | Так | Так | Так | Так | Так |
| Відкритий код | Так | Ні | Ні | Так | Ні | Так |
| Робота офлайн | Так | Ні | Ні | Так | Ні | Ні |
Обмеження Community Edition
Community Edition — це повнофункціональне, самостійно розгортуване ядро DocPlatform. Воно включає все, що задокументовано на цьому сайті, з наступними обмеженнями:
| Ресурс | Community Edition |
|---|---|
| Редактори (користувачі, які можуть створювати/редагувати сторінки) | До 5 |
| Робочі простори | До 3 |
| Глядачі та коментатори | Необмежено (ніколи не враховуються) |
| Сторінок на робочий простір | Необмежено |
| Опублікована документація | Необмежено |
Ці обмеження покривають потреби більшості малих та середніх команд. Майбутня Enterprise Edition запропонує необмежену кількість редакторів, необмежену кількість робочих просторів, SAML/SSO, підтримку PostgreSQL та розширений пошук через Meilisearch — але Community Edition завжди залишатиметься повноцінною самостійно розгортуваною основою.