Skip to content

feat: двотрекова документація в адмінці (/admin/docs) - #99

Merged
InnerDesires merged 3 commits into
mainfrom
claude/admin-docs-two-types-1ad376
Sep 28, 2026
Merged

InnerDesires merged 3 commits into
mainfrom
claude/admin-docs-two-types-1ad376

Conversation

@InnerDesires

Copy link
Copy Markdown
Owner

Що зроблено

В адмін-панелі з'явився вбудований розділ документації /admin/docs з двома гілками (обидві лише українською):

  • Посібник менеджера (/admin/docs/manager) — 25 статей для контент-менеджерів: курси (кроки, тести, JSON-імпорт, записи, сертифікати, наслідки редагування опублікованого), публікації/сторінки/чернетки/SEO/локалізація/медіа/перенаправлення/форми, користувачі, коментарі та лайки, XP, пошук, глобальні блоки, FAQ.
  • Технічна документація (/admin/docs/technical) — 34 статті для розробників: архітектура і payload.config, повна модель даних (усі колекції та глобали з access/hooks/індексами), бізнес-логіка (завершення курсу, оцінювання тестів, XP, сертифікати, rate limiting), автентифікація (Better Auth, OTP, ролі, dev-login, аватари), інфраструктура (Neon, міграції, деплой, Blob, синхронізація локалей пошуку, email), процеси розробки (включно зі статтею про сам docs-viewer).

У навігації адмінки додано секцію «Документація» з двома посиланнями (afterNavLinks).

Архітектура

  • Контент — markdown-файли docs/admin-panel/<track>/<NN-категорія>/<NN-стаття>.md; NN- префікс задає порядок і не входить у URL; _category.json — назва/опис категорії; frontmatter — title + description. Нова стаття = новий файл, dev підхоплює одразу.
  • Рендеринг — src/lib/admin-docs/: лоадер (кеш лише в production) і рендерер на marked: транслітеровані якорі заголовків, колаути :::info|tip|warning|danger, таблиці зі скролом, зовнішні лінки в новій вкладці.
  • В'юха — кастомна admin-view (views.docs, path: '/docs', exact: false) в DefaultTemplate з auth-redirect; сайдбар з перемикачем треків і згортуваними категоріями; хлібні крихти; попередня/наступна стаття.
  • Пошук — ⌘K, клієнтський скоринг по індексу з session-gated API /api/admin-docs/search-index (сніпети, результати з обох треків).
  • Зміст — скролспай на IntersectionObserver + прогрес-бар читання.
  • Крос-посилання — SPA-навігація (перехоплення кліків + router.push).
  • Vercel — outputFileTracingIncludes включає md-дерево в серверний бандл (перевірено в прод-збірці: 70 файлів у nft обох маршрутів).

Тести

tests/int/admin-docs.int.spec.ts — 13 тестів: рендерер (якорі, дедуплікація, колаути, екранування, таблиці) + перевірки реального контенту, зокрема валідація всіх внутрішніх крос-посилань (битий лінк валить CI) і сканер на просочений сирий markdown.

Перевірено

  • ✅ tsc, ESLint, повний test:int (єдиний новий фейл був очікуваним до завершення контенту)
  • ✅ Прод-збірка (pnpm build + nft-трасування md-файлів)
  • ✅ Вручну в браузері: лендинг, обидва треки, статті (світла/темна тема), пошук, TOC-скролспай, SPA-переходи, посилання в навігації адмінки

🤖 Generated with Claude Code

- Custom Payload admin view (/admin/docs, exact:false) wrapped in DefaultTemplate,
  with auth redirect, track switcher, breadcrumbs, prev/next pager
- Content: 59 Ukrainian articles in docs/admin-panel/{manager,technical} covering
  every collection, hook, access rule, and business-logic sharp edge
- Renderer: marked + transliterated heading ids, :::callouts, scroll-wrapped
  tables, external-link handling (src/lib/admin-docs)
- UX: client-side search (session-gated index API, Cmd+K), TOC scrollspy with
  reading progress, collapsible category nav, client-side cross-link navigation
- Nav: 'Документація' section with two entry links via afterNavLinks
- outputFileTracingIncludes so md files reach Vercel serverless bundles
- Tests: renderer unit cases + real-content checks incl. cross-link resolvability
@vercel

vercel Bot commented Aug 14, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
learning-platform Ready Ready Preview Aug 15, 2026 4:40am

@InnerDesires
InnerDesires merged commit 74a524a into main Sep 28, 2026
5 checks passed

This branch was successfully deployed

1 active deployment
Preview — a96d3363 Deployed Aug 15, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant