Ваш перший робочий простір
Робочий простір — це контейнер верхнього рівня для проєкту документації. Кожен робочий простір відповідає директорії Markdown файлів та опціонально синхронізується з git репозиторієм.
Концепції робочого простору
| Концепція | Опис |
|---|---|
| Робочий простір | Проєкт документації, що містить сторінки, учасників та налаштування |
| Сторінка | Markdown файл із YAML frontmatter (назва, опис, теги, доступ) |
| Slug | URL-безпечний ідентифікатор вашого робочого простору (наприклад, my-docs → /p/my-docs/) |
| Учасник | Користувач із роллю в робочому просторі (від Viewer до Admin) |
Створення робочого простору
Через CLI
docplatform init \
--workspace-name "Engineering Docs" \
--slug eng-docs
Через веб-інтерфейс
- Увійдіть як Super Admin або Admin
- Відкрийте перемикач робочих просторів (випадаючий список зверху зліва)
- Натисніть Create Workspace
- Введіть назву та slug
- Опціонально налаштуйте віддалений git репозиторій
Підключення git репозиторію
Двонаправлена синхронізація підтримує файли робочого простору та віддалений git репозиторій в актуальному стані.
Під час ініціалізації
docplatform init \
--workspace-name "Engineering Docs" \
--slug eng-docs \
--git-url [email protected]:your-org/eng-docs.git \
--branch main
Після створення
Оновіть конфігурацію робочого простору за адресою .docplatform/workspaces/{id}/.docplatform/config.yaml:
git_remote: [email protected]:your-org/eng-docs.git
git_branch: main
git_auto_commit: true
sync_interval: 300 # seconds
Потім перезапустіть сервер або запустіть ручну синхронізацію з веб-інтерфейсу.
Налаштування SSH ключа
Для приватних репозиторіїв DocPlatform використовує виділений SSH deploy key:
# Generate a deploy key (no passphrase)
ssh-keygen -t ed25519 -f ~/.ssh/docplatform_deploy_key -N ""
# Add the public key to your repository's deploy keys
cat ~/.ssh/docplatform_deploy_key.pub
# → Copy this to GitHub/GitLab Settings → Deploy Keys (enable write access)
Встановіть змінну середовища:
export GIT_SSH_KEY_PATH=~/.ssh/docplatform_deploy_key
Як працює синхронізація
┌─────────────┐ auto-commit + push ┌──────────────┐
│ Web Editor │ ──────────────────────────► │ Remote Repo │
│ (browser) │ │ (GitHub, etc)│
│ │ ◄────────────────────────── │ │
└─────────────┘ polling / webhook └──────────────┘
Веб → Git: Коли ви зберігаєте в редакторі, DocPlatform записує .md файл, автоматично фіксує з описовим повідомленням та відправляє на віддалений сервер.
Git → Веб: DocPlatform опитує віддалений сервер (за замовчуванням: кожні 5 хвилин) або слухає webhook. Нові коміти витягуються, і веб-інтерфейс оновлюється в реальному часі через WebSocket.
Конфлікти: Якщо обидві сторони змінюють той самий файл між синхронізаціями, DocPlatform виявляє колізію за допомогою хешів контенту, повертає HTTP 409 та робить обидві версії доступними для завантаження, щоб ви могли вирішити конфлікт вручну.
Організація контенту
Ієрархія сторінок
Сторінки можуть бути вкладені на будь-яку глибину. Структура файлів у docs/ безпосередньо відповідає структурі URL:
docs/
├── index.md → /p/eng-docs/
├── getting-started.md → /p/eng-docs/getting-started
├── api/
│ ├── index.md → /p/eng-docs/api/
│ ├── authentication.md → /p/eng-docs/api/authentication
│ └── endpoints.md → /p/eng-docs/api/endpoints
└── guides/
├── deployment.md → /p/eng-docs/guides/deployment
└── contributing.md → /p/eng-docs/guides/contributing
Frontmatter
Кожна сторінка починається з YAML frontmatter:
---
title: Authentication
description: How to authenticate with the API using JWT tokens.
tags: [api, auth, jwt]
published: true
access:
roles: [] # empty = all workspace members (default)
users: [] # restrict by @user_id
---
Поле title є обов’язковим. Усі інші поля є опціональними та мають розумні значення за замовчуванням.
Запрошення команди
Через веб-інтерфейс
- Відкрийте Workspace Settings → Members
- Натисніть Invite
- Введіть електронну адресу особи
- Оберіть роль (Viewer, Commenter, Editor, Admin)
- Натисніть Send Invitation
Якщо SMTP налаштовано, запрошення надсилається електронною поштою. В іншому випадку відображається посилання-запрошення, яке можна скопіювати.
Ролі
| Роль | Перегляд | Коментування | Редагування | Управління учасниками | Управління робочим простором |
|---|---|---|---|---|---|
| Viewer | Так | ||||
| Commenter | Так | Так | |||
| Editor | Так | Так | Так | ||
| Admin | Так | Так | Так | Так | Так |
| Super Admin | Повний доступ до платформи в усіх робочих просторах |
Для детальної конфігурації прав доступу див. Ролі та права доступу.
Налаштування робочого простору
Доступ до налаштувань робочого простору через веб-інтерфейс (значок Settings шестеренки) або шляхом безпосереднього редагування конфігураційного файлу.
Основні налаштування:
| Параметр | Опис | За замовчуванням |
|---|---|---|
name |
Відображувана назва робочого простору | — |
slug |
URL slug для опублікованої документації | — |
git_remote |
URL віддаленого git репозиторію | (немає) |
git_branch |
Гілка для синхронізації | main |
git_auto_commit |
Автоматична фіксація збережень редактора | true |
sync_interval |
Інтервал опитування git (секунди) | 300 |
theme.mode |
Кольорова схема: light, dark, auto |
auto |
theme.accent |
Акцентний колір | blue |
permissions.default_role |
Роль для нових учасників | viewer |
Для повного довідника конфігурації див. Налаштування робочого простору.
Що далі
Ваш робочий простір готовий. Ось куди рухатися далі:
| Мета | Посібник |
|---|---|
| Вивчити веб-редактор | Веб-редактор |
| Налаштувати опубліковану документацію | Публікація |
| Налаштувати автентифікацію | Автентифікація |
| Розгорнути у виробництво | Контрольний список для виробництва |