@dzhechkov/keysarium 1.4.0 → 1.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +50 -3
- package/bin/cli.js +0 -0
- package/package.json +5 -3
- package/templates/.claude/commands/analyst-manual.md +38 -0
- package/templates/.claude/commands/casarium.md +55 -4
- package/templates/.claude/commands/feature-adr.md +8 -0
- package/templates/.claude/rules/trust-tiers.md +5 -0
- package/templates/.claude/shards/feature-adr.shard.md +64 -10
- package/templates/.claude/shards/phase-ai-factory.shard.md +109 -0
- package/templates/.claude/skills/ai-factory-mapper/README.md +90 -0
- package/templates/.claude/skills/ai-factory-mapper/SKILL.md +309 -0
- package/templates/.claude/skills/ai-factory-mapper/assets/report-template.md +123 -0
- package/templates/.claude/skills/ai-factory-mapper/references/catalog.md +230 -0
- package/templates/.claude/skills/ai-factory-mapper/references/coverage-formula.md +219 -0
- package/templates/.claude/skills/ai-factory-mapper/references/decomposition-checklist.md +183 -0
- package/templates/.claude/skills/ai-factory-mapper/references/pattern-library.md +312 -0
- package/templates/.claude/skills/ai-factory-mapper/scripts/build_docx_report.js +423 -0
- package/templates/.claude/skills/analyst-manual-full/SKILL.md +286 -0
- package/templates/.claude/skills/edu-site-generator/SKILL.md +254 -0
- package/templates/.claude/skills/edu-site-generator/examples/sample-course-structure.md +116 -0
- package/templates/.claude/skills/edu-site-generator/modules/00-content-analysis.md +84 -0
- package/templates/.claude/skills/edu-site-generator/modules/01-course-structure.md +75 -0
- package/templates/.claude/skills/edu-site-generator/modules/02-data-generation.md +186 -0
- package/templates/.claude/skills/edu-site-generator/modules/03-scaffold.md +249 -0
- package/templates/.claude/skills/edu-site-generator/modules/04-components.md +130 -0
- package/templates/.claude/skills/edu-site-generator/modules/05-gamification.md +163 -0
- package/templates/.claude/skills/edu-site-generator/modules/06-deploy.md +88 -0
- package/templates/.claude/skills/edu-site-generator/modules/07-verification.md +97 -0
- package/templates/.claude/skills/edu-site-generator/references/component-templates.md +436 -0
- package/templates/.claude/skills/edu-site-generator/references/data-schemas.md +164 -0
- package/templates/.claude/skills/edu-site-generator/references/exercise-catalog.md +110 -0
- package/templates/.claude/skills/edu-site-generator/references/tech-stack.md +69 -0
- package/templates/.claude/skills/feature-adr/SKILL.md +245 -59
- package/templates/.claude/skills/feature-adr/modules/03-adr.md +43 -0
- package/templates/.claude/skills/feature-adr/modules/03.5-ideation-swarm.md +180 -0
- package/templates/.claude/skills/feature-adr/modules/06-implementation-plan.md +56 -7
- package/templates/.claude/skills/feature-adr/modules/08-qe.md +87 -23
- package/templates/.claude/skills/feature-adr/modules/09-fleet-qe.md +305 -0
- package/templates/.claude/skills/feature-adr/references/agentic-qe/README.md +143 -0
- package/templates/.claude/skills/feature-adr/references/agentic-qe/brutal-honesty-review.md +240 -0
- package/templates/.claude/skills/feature-adr/references/agentic-qe/chaos-engineering-resilience.md +163 -0
- package/templates/.claude/skills/feature-adr/references/agentic-qe/code-goal-planner.md +446 -0
- package/templates/.claude/skills/feature-adr/references/agentic-qe/enterprise-integration-testing.md +111 -0
- package/templates/.claude/skills/feature-adr/references/agentic-qe/mutation-testing.md +236 -0
- package/templates/.claude/skills/feature-adr/references/agentic-qe/performance-testing.md +315 -0
- package/templates/.claude/skills/feature-adr/references/agentic-qe/qcsd-ideation-swarm.md +126 -0
- package/templates/.claude/skills/feature-adr/references/agentic-qe/qcsd-production-swarm.md +108 -0
- package/templates/.claude/skills/feature-adr/references/agentic-qe/qe-coverage-analysis.md +193 -0
- package/templates/.claude/skills/feature-adr/references/agentic-qe/qe-requirements-validation.md +254 -0
- package/templates/.claude/skills/feature-adr/references/agentic-qe/regression-testing.md +233 -0
- package/templates/.claude/skills/feature-adr/references/agentic-qe/risk-based-testing.md +212 -0
- package/templates/.claude/skills/feature-adr/references/agentic-qe/security-testing.md +311 -0
- package/templates/.claude/skills/feature-adr/references/agentic-qe/shift-left-testing.md +231 -0
- package/templates/.claude/skills/feature-adr/references/agentic-qe/tdd-london-chicago.md +249 -0
- package/templates/.claude/skills/transcript-site-generator/SKILL.md +287 -0
- package/templates/.claude/skills/transcript-site-generator/examples/sample-text-only-site.md +123 -0
- package/templates/.claude/skills/transcript-site-generator/examples/sample-transcript-site.md +134 -0
- package/templates/.claude/skills/transcript-site-generator/modules/00-input-analysis.md +132 -0
- package/templates/.claude/skills/transcript-site-generator/modules/01-content-parsing.md +117 -0
- package/templates/.claude/skills/transcript-site-generator/modules/02-site-generation.md +293 -0
- package/templates/.claude/skills/transcript-site-generator/modules/03-interactivity.md +406 -0
- package/templates/.claude/skills/transcript-site-generator/modules/04-deploy.md +130 -0
- package/templates/.claude/skills/transcript-site-generator/modules/05-verification.md +155 -0
- package/templates/.claude/skills/transcript-site-generator/references/component-catalog.md +86 -0
- package/templates/.claude/skills/transcript-site-generator/references/data-schemas.md +123 -0
- package/templates/.claude/skills/transcript-site-generator/references/tech-stack.md +132 -0
- package/templates/CLAUDE.md +9 -2
- package/templates/docs/edu-site-generator/01-deployment-guide.md +911 -0
- package/templates/docs/edu-site-generator/02-admin-guide.md +901 -0
- package/templates/docs/edu-site-generator/03-user-guide.md +1008 -0
- package/templates/docs/edu-site-generator/04-infrastructure-requirements.md +489 -0
- package/templates/docs/edu-site-generator/05-architecture.md +902 -0
- package/templates/docs/edu-site-generator/06-user-flows.md +759 -0
- package/templates/docs/transcript-site-generator/01-deployment-guide.md +1042 -0
- package/templates/docs/transcript-site-generator/02-admin-guide.md +918 -0
- package/templates/docs/transcript-site-generator/03-user-guide.md +925 -0
- package/templates/docs/transcript-site-generator/04-infrastructure-requirements.md +482 -0
- package/templates/docs/transcript-site-generator/05-architecture.md +1068 -0
- package/templates/docs/transcript-site-generator/06-user-flows.md +855 -0
|
@@ -0,0 +1,911 @@
|
|
|
1
|
+
# Руководство по развёртыванию @dzhechkov/skills-edu-site
|
|
2
|
+
|
|
3
|
+
## Содержание
|
|
4
|
+
|
|
5
|
+
1. [Предварительные требования](#1-предварительные-требования)
|
|
6
|
+
2. [Методы установки](#2-методы-установки)
|
|
7
|
+
3. [Установка с помощью npx](#3-установка-с-помощью-npx)
|
|
8
|
+
4. [Автономная установка (standalone)](#4-автономная-установка-standalone)
|
|
9
|
+
5. [Установка рядом с Keysarium](#5-установка-рядом-с-keysarium)
|
|
10
|
+
6. [Проверка установки](#6-проверка-установки)
|
|
11
|
+
7. [Первый запуск — пошаговое руководство](#7-первый-запуск--пошаговое-руководство)
|
|
12
|
+
8. [Установка зависимостей и сборка сгенерированного сайта](#8-установка-зависимостей-и-сборка-сгенерированного-сайта)
|
|
13
|
+
9. [Интеграция с @dzhechkov/keysarium](#9-интеграция-с-dzhechkokeysarium)
|
|
14
|
+
10. [Обновление и удаление](#10-обновление-и-удаление)
|
|
15
|
+
11. [Устранение неполадок](#11-устранение-неполадок)
|
|
16
|
+
|
|
17
|
+
---
|
|
18
|
+
|
|
19
|
+
## 1. Предварительные требования
|
|
20
|
+
|
|
21
|
+
Перед установкой убедитесь, что на вашей машине установлено следующее программное обеспечение.
|
|
22
|
+
|
|
23
|
+
### 1.1. Node.js 16+
|
|
24
|
+
|
|
25
|
+
`@dzhechkov/skills-edu-site` требует Node.js версии 16 или выше. Рекомендуется использовать Node.js 20 LTS.
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
# Проверка установленной версии
|
|
29
|
+
node --version
|
|
30
|
+
# Ожидаемый вывод: v16.x.x или выше (рекомендуется v20+)
|
|
31
|
+
|
|
32
|
+
npm --version
|
|
33
|
+
# Ожидаемый вывод: 8.x.x или выше
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
Если Node.js не установлен или версия ниже требуемой:
|
|
37
|
+
|
|
38
|
+
```bash
|
|
39
|
+
# Установка через nvm (рекомендуемый способ, все платформы)
|
|
40
|
+
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
|
|
41
|
+
source ~/.bashrc
|
|
42
|
+
nvm install 20
|
|
43
|
+
nvm use 20
|
|
44
|
+
nvm alias default 20
|
|
45
|
+
|
|
46
|
+
# Установка на Ubuntu/Debian (через NodeSource)
|
|
47
|
+
curl -fsSL https://deb.nodesource.com/setup_20.x | sudo -E bash -
|
|
48
|
+
sudo apt install -y nodejs
|
|
49
|
+
|
|
50
|
+
# Установка на macOS (через Homebrew)
|
|
51
|
+
brew install node@20
|
|
52
|
+
echo 'export PATH="/opt/homebrew/opt/node@20/bin:$PATH"' >> ~/.zshrc
|
|
53
|
+
source ~/.zshrc
|
|
54
|
+
|
|
55
|
+
# Установка на Windows (через winget)
|
|
56
|
+
winget install OpenJS.NodeJS.LTS
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
### 1.2. Claude Code CLI
|
|
60
|
+
|
|
61
|
+
`@dzhechkov/skills-edu-site` устанавливает скиллы и команды в проект Claude Code. Сам Claude Code CLI должен быть установлен и настроен.
|
|
62
|
+
|
|
63
|
+
```bash
|
|
64
|
+
# Установка Claude Code CLI глобально
|
|
65
|
+
npm install -g @anthropic-ai/claude-code
|
|
66
|
+
|
|
67
|
+
# Проверка установки
|
|
68
|
+
claude --version
|
|
69
|
+
# Ожидаемый вывод: claude/x.x.x
|
|
70
|
+
|
|
71
|
+
# Если возникает ошибка прав доступа при глобальной установке:
|
|
72
|
+
# Способ 1: использование sudo (только для Linux/macOS)
|
|
73
|
+
sudo npm install -g @anthropic-ai/claude-code
|
|
74
|
+
|
|
75
|
+
# Способ 2: настройка npm prefix (рекомендуется, без sudo)
|
|
76
|
+
mkdir -p ~/.npm-global
|
|
77
|
+
npm config set prefix '~/.npm-global'
|
|
78
|
+
echo 'export PATH="$HOME/.npm-global/bin:$PATH"' >> ~/.bashrc
|
|
79
|
+
source ~/.bashrc
|
|
80
|
+
npm install -g @anthropic-ai/claude-code
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
### 1.3. npm
|
|
84
|
+
|
|
85
|
+
npm используется как менеджер пакетов для установки зависимостей сгенерированного SPA-приложения (React, Vite, TailwindCSS v4, Zustand).
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
# npm устанавливается автоматически вместе с Node.js
|
|
89
|
+
npm --version
|
|
90
|
+
# Ожидаемый вывод: 8.x.x или выше (рекомендуется npm 10+)
|
|
91
|
+
|
|
92
|
+
# Если npm устарел — обновите:
|
|
93
|
+
npm install -g npm@latest
|
|
94
|
+
```
|
|
95
|
+
|
|
96
|
+
### 1.4. Git (опционально, но рекомендуется)
|
|
97
|
+
|
|
98
|
+
Git необходим для управления версиями и для деплоя на GitHub Pages через GitHub Actions.
|
|
99
|
+
|
|
100
|
+
```bash
|
|
101
|
+
# Проверка установки
|
|
102
|
+
git --version
|
|
103
|
+
|
|
104
|
+
# Установка на Ubuntu/Debian
|
|
105
|
+
sudo apt install -y git
|
|
106
|
+
|
|
107
|
+
# Установка на macOS
|
|
108
|
+
brew install git
|
|
109
|
+
|
|
110
|
+
# Базовая настройка (если git установлен впервые)
|
|
111
|
+
git config --global user.name "Your Name"
|
|
112
|
+
git config --global user.email "your@email.com"
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
### 1.5. GitHub аккаунт (для деплоя на GitHub Pages)
|
|
116
|
+
|
|
117
|
+
Для автоматического деплоя сгенерированного сайта на GitHub Pages потребуется:
|
|
118
|
+
|
|
119
|
+
1. Аккаунт на [github.com](https://github.com)
|
|
120
|
+
2. Репозиторий, в который будет загружен сгенерированный проект
|
|
121
|
+
3. Включённый GitHub Pages в настройках репозитория (Settings > Pages > Source: GitHub Actions)
|
|
122
|
+
|
|
123
|
+
---
|
|
124
|
+
|
|
125
|
+
## 2. Методы установки
|
|
126
|
+
|
|
127
|
+
Пакет `@dzhechkov/skills-edu-site` можно установить тремя способами в зависимости от вашего сценария использования:
|
|
128
|
+
|
|
129
|
+
| Метод | Когда использовать | Команда |
|
|
130
|
+
|-------|-------------------|---------|
|
|
131
|
+
| **npx (разовая установка)** | Быстрый старт без глобальной установки | `npx @dzhechkov/skills-edu-site init` |
|
|
132
|
+
| **Глобальная установка** | Частое использование в нескольких проектах | `npm install -g @dzhechkov/skills-edu-site` |
|
|
133
|
+
| **Рядом с Keysarium** | Уже установлен `@dzhechkov/keysarium` | `npx @dzhechkov/skills-edu-site init` (определяет keysarium автоматически) |
|
|
134
|
+
|
|
135
|
+
Во всех случаях команда `init` копирует одни и те же файлы в проект. Разница только в том, как запускается CLI.
|
|
136
|
+
|
|
137
|
+
---
|
|
138
|
+
|
|
139
|
+
## 3. Установка с помощью npx
|
|
140
|
+
|
|
141
|
+
`npx` позволяет запустить пакет без предварительной установки. Это рекомендуемый способ для первого знакомства с пакетом.
|
|
142
|
+
|
|
143
|
+
### 3.1. Перейдите в директорию проекта
|
|
144
|
+
|
|
145
|
+
```bash
|
|
146
|
+
# Перейдите в корень проекта, куда нужно установить edu-site skill
|
|
147
|
+
cd /path/to/your-project
|
|
148
|
+
|
|
149
|
+
# Убедитесь, что вы в правильной директории
|
|
150
|
+
pwd
|
|
151
|
+
ls
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
Директория проекта должна содержать файлы вашего проекта Claude Code (или быть пустой, если создаёте новый проект).
|
|
155
|
+
|
|
156
|
+
### 3.2. Запустите установку
|
|
157
|
+
|
|
158
|
+
```bash
|
|
159
|
+
npx @dzhechkov/skills-edu-site init
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
CLI отобразит баннер и план установки:
|
|
163
|
+
|
|
164
|
+
```
|
|
165
|
+
+------------------------------------------------------+
|
|
166
|
+
| DZ-SKILLS-EDU-SITE -- Educational SPA Generator |
|
|
167
|
+
| Gamified learning sites with React + Vite + Tailwind |
|
|
168
|
+
+------------------------------------------------------+
|
|
169
|
+
|
|
170
|
+
Installation plan:
|
|
171
|
+
|
|
172
|
+
+ Edu-Site Skill (.claude/skills/edu-site-generator/)
|
|
173
|
+
+ Edu-Site Commands (.claude/commands/edu-site*.md)
|
|
174
|
+
+ Edu-Site Rules (.claude/rules/edu-site-*.md)
|
|
175
|
+
|
|
176
|
+
[1/3] Installing Edu-Site Skill...
|
|
177
|
+
[2/3] Installing Edu-Site Commands...
|
|
178
|
+
[3/3] Installing Edu-Site Rules...
|
|
179
|
+
|
|
180
|
+
Created .edu-site-skills.json manifest
|
|
181
|
+
|
|
182
|
+
Edu-Site skill pack installed!
|
|
183
|
+
|
|
184
|
+
Installed components:
|
|
185
|
+
- Edu-Site Skill (.claude/skills/edu-site-generator/)
|
|
186
|
+
- Edu-Site Commands (.claude/commands/edu-site*.md)
|
|
187
|
+
- Edu-Site Rules (.claude/rules/edu-site-*.md)
|
|
188
|
+
|
|
189
|
+
Next steps:
|
|
190
|
+
1. Open Claude Code in this directory
|
|
191
|
+
2. Provide documentation or topic to generate a learning site
|
|
192
|
+
3. The 8-step pipeline will create a complete SPA:
|
|
193
|
+
Content Analysis -> Course Structure -> Data Generation ->
|
|
194
|
+
Scaffold -> Components -> Gamification -> Deploy -> Verification
|
|
195
|
+
```
|
|
196
|
+
|
|
197
|
+
### 3.3. Предпросмотр без записи (dry-run)
|
|
198
|
+
|
|
199
|
+
Если хотите узнать, что именно будет установлено, не записывая файлы:
|
|
200
|
+
|
|
201
|
+
```bash
|
|
202
|
+
npx @dzhechkov/skills-edu-site init --dry-run
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
Команда покажет план установки и завершится без изменений.
|
|
206
|
+
|
|
207
|
+
### 3.4. Принудительная перезапись (force)
|
|
208
|
+
|
|
209
|
+
Если edu-site skill уже установлен и вы хотите заменить файлы свежими из пакета:
|
|
210
|
+
|
|
211
|
+
```bash
|
|
212
|
+
npx @dzhechkov/skills-edu-site init --force
|
|
213
|
+
```
|
|
214
|
+
|
|
215
|
+
> **Внимание:** `--force` перезапишет существующие файлы edu-site. Ваши пользовательские модификации будут утеряны. Сначала сделайте бэкап или зафиксируйте изменения в git.
|
|
216
|
+
|
|
217
|
+
---
|
|
218
|
+
|
|
219
|
+
## 4. Автономная установка (standalone)
|
|
220
|
+
|
|
221
|
+
Если вы планируете использовать edu-site генератор регулярно и не хотите каждый раз запускать `npx`, установите пакет глобально.
|
|
222
|
+
|
|
223
|
+
### 4.1. Глобальная установка
|
|
224
|
+
|
|
225
|
+
```bash
|
|
226
|
+
npm install -g @dzhechkov/skills-edu-site
|
|
227
|
+
|
|
228
|
+
# Проверка установки
|
|
229
|
+
skills-edu-site --version
|
|
230
|
+
# или
|
|
231
|
+
npx @dzhechkov/skills-edu-site --version
|
|
232
|
+
```
|
|
233
|
+
|
|
234
|
+
### 4.2. Инициализация в проекте
|
|
235
|
+
|
|
236
|
+
После глобальной установки перейдите в проект и запустите:
|
|
237
|
+
|
|
238
|
+
```bash
|
|
239
|
+
cd /path/to/your-project
|
|
240
|
+
skills-edu-site init
|
|
241
|
+
```
|
|
242
|
+
|
|
243
|
+
Или по-прежнему через npx (будет использована кешированная локальная версия):
|
|
244
|
+
|
|
245
|
+
```bash
|
|
246
|
+
npx @dzhechkov/skills-edu-site init
|
|
247
|
+
```
|
|
248
|
+
|
|
249
|
+
### 4.3. Структура установленных файлов
|
|
250
|
+
|
|
251
|
+
После `init` в корне проекта появятся следующие файлы и директории:
|
|
252
|
+
|
|
253
|
+
```
|
|
254
|
+
your-project/
|
|
255
|
+
+-- .edu-site-skills.json <- Манифест установки
|
|
256
|
+
+-- .claude/
|
|
257
|
+
+-- skills/
|
|
258
|
+
| +-- edu-site-generator/
|
|
259
|
+
| +-- SKILL.md <- Основной оркестратор
|
|
260
|
+
| +-- modules/
|
|
261
|
+
| | +-- 01-content-analysis.md <- Шаг 1: Анализ контента
|
|
262
|
+
| | +-- 02-course-structure.md <- Шаг 2: Структура курса
|
|
263
|
+
| | +-- 03-data-generation.md <- Шаг 3: Генерация данных
|
|
264
|
+
| | +-- 04-scaffold.md <- Шаг 4: Scaffolding проекта
|
|
265
|
+
| | +-- 05-components.md <- Шаг 5: React-компоненты
|
|
266
|
+
| | +-- 06-gamification.md <- Шаг 6: Геймификация
|
|
267
|
+
| | +-- 07-deploy.md <- Шаг 7: Деплой (GitHub Pages)
|
|
268
|
+
| | +-- 08-verification.md <- Шаг 8: Верификация
|
|
269
|
+
| +-- references/
|
|
270
|
+
| | +-- exercise-types.md <- 6 типов упражнений
|
|
271
|
+
| | +-- component-patterns.md <- Паттерны React-компонентов
|
|
272
|
+
| | +-- tailwind-v4-guide.md <- Справочник TailwindCSS v4
|
|
273
|
+
| | +-- zustand-patterns.md <- Паттерны Zustand store
|
|
274
|
+
| | +-- achievement-templates.md <- Шаблоны достижений
|
|
275
|
+
| +-- examples/
|
|
276
|
+
| +-- sample-sections.js <- Пример файла sections.js
|
|
277
|
+
| +-- sample-exercises.js <- Пример файла exercises.js
|
|
278
|
+
+-- commands/
|
|
279
|
+
| +-- edu-site.md <- /edu-site -- полный пайплайн
|
|
280
|
+
+-- rules/
|
|
281
|
+
+-- edu-site-conventions.md <- Правила генерации
|
|
282
|
+
```
|
|
283
|
+
|
|
284
|
+
Манифест `.edu-site-skills.json` записывает версию, список компонентов и все установленные файлы. Он используется командами `update`, `remove`, `list` и `doctor`.
|
|
285
|
+
|
|
286
|
+
---
|
|
287
|
+
|
|
288
|
+
## 5. Установка рядом с Keysarium
|
|
289
|
+
|
|
290
|
+
`@dzhechkov/skills-edu-site` разработан для совместной работы с `@dzhechkov/keysarium`. При установке в проект, где уже есть Keysarium, edu-site автоматически определяет это и интегрируется.
|
|
291
|
+
|
|
292
|
+
### 5.1. Определение Keysarium
|
|
293
|
+
|
|
294
|
+
Команда `init` ищет файл `.keysarium.json` в корне проекта. Если он найден — edu-site выводит сообщение об интеграции:
|
|
295
|
+
|
|
296
|
+
```
|
|
297
|
+
+--------------------------------------------------+
|
|
298
|
+
| @dzhechkov/keysarium detected! |
|
|
299
|
+
| Version: 1.0.0 |
|
|
300
|
+
| Edu-Site will integrate with existing setup. |
|
|
301
|
+
| Shared directories: .claude/commands, rules |
|
|
302
|
+
+--------------------------------------------------+
|
|
303
|
+
```
|
|
304
|
+
|
|
305
|
+
### 5.2. Порядок установки с Keysarium
|
|
306
|
+
|
|
307
|
+
Рекомендуемый порядок установки (если оба пакета устанавливаются с нуля):
|
|
308
|
+
|
|
309
|
+
```bash
|
|
310
|
+
# Шаг 1: Установите Keysarium первым
|
|
311
|
+
npx @dzhechkov/keysarium init
|
|
312
|
+
|
|
313
|
+
# Шаг 2: Установите edu-site поверх
|
|
314
|
+
npx @dzhechkov/skills-edu-site init
|
|
315
|
+
```
|
|
316
|
+
|
|
317
|
+
Edu-site добавит свои файлы в уже существующие директории `.claude/commands/` и `.claude/rules/`, не затрагивая файлы Keysarium.
|
|
318
|
+
|
|
319
|
+
### 5.3. Разделение файлов (изоляция)
|
|
320
|
+
|
|
321
|
+
Оба пакета используют соглашение об именовании, чтобы не конфликтовать:
|
|
322
|
+
|
|
323
|
+
| Пакет | Команды | Правила | Скиллы |
|
|
324
|
+
|-------|---------|---------|--------|
|
|
325
|
+
| Keysarium | `casarium.md`, `discovery.md`, ... | `agent-swarm.md`, `checkpoint-protocol.md`, ... | keysarium-скиллы |
|
|
326
|
+
| Edu-Site | `edu-site.md` | `edu-site-conventions.md` | `edu-site-generator/` |
|
|
327
|
+
|
|
328
|
+
Все файлы edu-site начинаются с префикса `edu-site`. Пересечений нет.
|
|
329
|
+
|
|
330
|
+
---
|
|
331
|
+
|
|
332
|
+
## 6. Проверка установки
|
|
333
|
+
|
|
334
|
+
### 6.1. Команда doctor
|
|
335
|
+
|
|
336
|
+
Запустите `doctor` для проверки здоровья установки сразу после `init`:
|
|
337
|
+
|
|
338
|
+
```bash
|
|
339
|
+
npx @dzhechkov/skills-edu-site doctor
|
|
340
|
+
```
|
|
341
|
+
|
|
342
|
+
Пример вывода при здоровой установке:
|
|
343
|
+
|
|
344
|
+
```
|
|
345
|
+
Running health checks for @dzhechkov/skills-edu-site v1.0.0...
|
|
346
|
+
|
|
347
|
+
- Files exist -- All 16 manifest files present
|
|
348
|
+
- Edu-Site skill pack -- SKILL.md present, 8 module(s) in skill pack
|
|
349
|
+
- Edu-Site commands -- 1 command(s): edu-site.md
|
|
350
|
+
- Edu-Site rules -- 1 rule(s): edu-site-conventions.md
|
|
351
|
+
- References -- 5 reference file(s) present
|
|
352
|
+
- Examples -- 2 example file(s) present
|
|
353
|
+
- Keysarium integration -- Active (Keysarium v1.0.0)
|
|
354
|
+
|
|
355
|
+
7/7 checks passed -- Edu-Site installation is healthy!
|
|
356
|
+
```
|
|
357
|
+
|
|
358
|
+
### 6.2. Команда list
|
|
359
|
+
|
|
360
|
+
Для просмотра установленных компонентов с детальным перечнем файлов:
|
|
361
|
+
|
|
362
|
+
```bash
|
|
363
|
+
npx @dzhechkov/skills-edu-site list
|
|
364
|
+
```
|
|
365
|
+
|
|
366
|
+
### 6.3. Проверка в Claude Code
|
|
367
|
+
|
|
368
|
+
Откройте Claude Code в директории проекта и убедитесь, что команда edu-site доступна:
|
|
369
|
+
|
|
370
|
+
```bash
|
|
371
|
+
# Откройте Claude Code в директории проекта
|
|
372
|
+
claude
|
|
373
|
+
|
|
374
|
+
# Внутри Claude Code проверьте доступность команды
|
|
375
|
+
/edu-site --help
|
|
376
|
+
```
|
|
377
|
+
|
|
378
|
+
---
|
|
379
|
+
|
|
380
|
+
## 7. Первый запуск -- пошаговое руководство
|
|
381
|
+
|
|
382
|
+
Этот раздел проводит вас через полный пайплайн генерации образовательного SPA-приложения.
|
|
383
|
+
|
|
384
|
+
### 7.1. Сценарий
|
|
385
|
+
|
|
386
|
+
Мы создадим интерактивный обучающий сайт по документации CLI-инструмента, используя 8-шаговый пайплайн.
|
|
387
|
+
|
|
388
|
+
### 7.2. Подготовка входных данных
|
|
389
|
+
|
|
390
|
+
Edu-site генератор принимает различные типы входных данных:
|
|
391
|
+
|
|
392
|
+
| Тип входа | Пример |
|
|
393
|
+
|-----------|--------|
|
|
394
|
+
| URL документации | `https://docs.example.com/cli-reference` |
|
|
395
|
+
| Локальный файл | `./docs/cli-guide.md` |
|
|
396
|
+
| Вставленный текст | Прямой текст в чат Claude Code |
|
|
397
|
+
| Описание темы | "Обучение основам Docker для начинающих разработчиков" |
|
|
398
|
+
|
|
399
|
+
### 7.3. Запуск пайплайна
|
|
400
|
+
|
|
401
|
+
В Claude Code введите:
|
|
402
|
+
|
|
403
|
+
```
|
|
404
|
+
/edu-site https://docs.example.com/cli-reference
|
|
405
|
+
```
|
|
406
|
+
|
|
407
|
+
Или с текстовым описанием:
|
|
408
|
+
|
|
409
|
+
```
|
|
410
|
+
/edu-site "Создай обучающий сайт по основам Git: базовые команды, ветвление, слияние, работа с удалёнными репозиториями"
|
|
411
|
+
```
|
|
412
|
+
|
|
413
|
+
### 7.4. 8-шаговый пайплайн
|
|
414
|
+
|
|
415
|
+
Пайплайн состоит из 8 последовательных шагов:
|
|
416
|
+
|
|
417
|
+
**Шаг 1: Content Analysis (Анализ контента)**
|
|
418
|
+
|
|
419
|
+
Claude Code анализирует предоставленные материалы, определяет язык (ru/en автоматически), выделяет ключевые темы, концепции и терминологию.
|
|
420
|
+
|
|
421
|
+
```
|
|
422
|
+
Step 1/8: Content Analysis
|
|
423
|
+
Detected language: en
|
|
424
|
+
Topics identified: 12
|
|
425
|
+
Key concepts: 34
|
|
426
|
+
Estimated sections: 5
|
|
427
|
+
```
|
|
428
|
+
|
|
429
|
+
**Шаг 2: Course Structure (Структура курса)**
|
|
430
|
+
|
|
431
|
+
На основе анализа формируется иерархия секций, определяется порядок изучения и зависимости между темами.
|
|
432
|
+
|
|
433
|
+
```
|
|
434
|
+
Step 2/8: Course Structure
|
|
435
|
+
Sections planned:
|
|
436
|
+
1. Getting Started (3 exercises)
|
|
437
|
+
2. Core Commands (5 exercises)
|
|
438
|
+
3. Branching (4 exercises)
|
|
439
|
+
4. Merging (3 exercises)
|
|
440
|
+
5. Remote Repositories (4 exercises)
|
|
441
|
+
Total exercises: 19
|
|
442
|
+
```
|
|
443
|
+
|
|
444
|
+
**Шаг 3: Data Generation (Генерация данных)**
|
|
445
|
+
|
|
446
|
+
Генерируются 4 файла данных: `sections.js`, `exercises.js`, `quizQuestions.js`, `achievements.js`. Каждый содержит структурированные данные для работы приложения.
|
|
447
|
+
|
|
448
|
+
```
|
|
449
|
+
Step 3/8: Data Generation
|
|
450
|
+
Files planned:
|
|
451
|
+
- src/data/sections.js (5 sections, 24 subsections)
|
|
452
|
+
- src/data/exercises.js (19 exercises, 6 types)
|
|
453
|
+
- src/data/quizQuestions.js (25 questions for final test)
|
|
454
|
+
- src/data/achievements.js (12 achievements)
|
|
455
|
+
```
|
|
456
|
+
|
|
457
|
+
**Шаг 4: Scaffold (Каркас проекта)**
|
|
458
|
+
|
|
459
|
+
Создаётся структура проекта: Vite конфиг, TailwindCSS v4 настройка, package.json со всеми зависимостями, index.html с SEO-тегами.
|
|
460
|
+
|
|
461
|
+
```
|
|
462
|
+
Step 4/8: Scaffold
|
|
463
|
+
Created:
|
|
464
|
+
- package.json (React 19, Vite, TailwindCSS v4, Zustand)
|
|
465
|
+
- vite.config.js (base path for GitHub Pages)
|
|
466
|
+
- index.html (OG tags, JSON-LD schema)
|
|
467
|
+
- tailwind.config.js / app.css (theme configuration)
|
|
468
|
+
- .github/workflows/deploy.yml (GitHub Actions)
|
|
469
|
+
```
|
|
470
|
+
|
|
471
|
+
**Шаг 5: Components (React-компоненты)**
|
|
472
|
+
|
|
473
|
+
Генерируются все React-компоненты: макет (Header, Footer, Sidebar), интерактивные упражнения (6 типов), общие компоненты (Toast, ProgressBar, Badge), страницы (Home, Section, FinalTest, Results).
|
|
474
|
+
|
|
475
|
+
```
|
|
476
|
+
Step 5/8: Components
|
|
477
|
+
Generated:
|
|
478
|
+
- Layout: Header, Footer, Sidebar, Navigation
|
|
479
|
+
- Interactive: Quiz, Flashcards, Matching, DragToOrder,
|
|
480
|
+
CommandBuilder, ScenarioGame
|
|
481
|
+
- Common: Toast, ProgressBar, Badge, AchievementPopup
|
|
482
|
+
- Pages: HomePage, SectionPage, FinalTestPage, ResultsPage
|
|
483
|
+
Total: 22 components
|
|
484
|
+
```
|
|
485
|
+
|
|
486
|
+
**Шаг 6: Gamification (Геймификация)**
|
|
487
|
+
|
|
488
|
+
Настраивается Zustand store с persist middleware (localStorage), система достижений, подсчёт очков, progress tracking.
|
|
489
|
+
|
|
490
|
+
```
|
|
491
|
+
Step 6/8: Gamification
|
|
492
|
+
Configured:
|
|
493
|
+
- Zustand store with persist middleware
|
|
494
|
+
- Points system: +10 per exercise, +5 bonus for streak
|
|
495
|
+
- 12 achievements with unlock criteria
|
|
496
|
+
- Progress tracking per section
|
|
497
|
+
- Toast notifications for achievements
|
|
498
|
+
```
|
|
499
|
+
|
|
500
|
+
**Шаг 7: Deploy (Деплой)**
|
|
501
|
+
|
|
502
|
+
Генерируется GitHub Actions workflow для автоматического деплоя на GitHub Pages. Настраивается корректный base path в Vite конфиге.
|
|
503
|
+
|
|
504
|
+
```
|
|
505
|
+
Step 7/8: Deploy
|
|
506
|
+
Created:
|
|
507
|
+
- .github/workflows/deploy.yml
|
|
508
|
+
- Vite base path: /<repository-name>/
|
|
509
|
+
- GitHub Pages configuration ready
|
|
510
|
+
```
|
|
511
|
+
|
|
512
|
+
**Шаг 8: Verification (Верификация)**
|
|
513
|
+
|
|
514
|
+
Проверяется корректность всех сгенерированных файлов: структура проекта, импорты, наличие всех данных, валидность JSX.
|
|
515
|
+
|
|
516
|
+
```
|
|
517
|
+
Step 8/8: Verification
|
|
518
|
+
Checks:
|
|
519
|
+
- All imports resolve: PASS
|
|
520
|
+
- Data file structure: PASS
|
|
521
|
+
- Component hierarchy: PASS
|
|
522
|
+
- Router configuration: PASS
|
|
523
|
+
- Build simulation: PASS
|
|
524
|
+
|
|
525
|
+
All 5 checks passed!
|
|
526
|
+
```
|
|
527
|
+
|
|
528
|
+
### 7.5. Результат
|
|
529
|
+
|
|
530
|
+
По завершении пайплайна вы получите полностью рабочий проект в указанной директории:
|
|
531
|
+
|
|
532
|
+
```
|
|
533
|
+
generated-site/
|
|
534
|
+
+-- package.json
|
|
535
|
+
+-- vite.config.js
|
|
536
|
+
+-- index.html
|
|
537
|
+
+-- tailwind.config.js
|
|
538
|
+
+-- src/
|
|
539
|
+
| +-- App.jsx
|
|
540
|
+
| +-- main.jsx
|
|
541
|
+
| +-- app.css
|
|
542
|
+
| +-- data/
|
|
543
|
+
| | +-- sections.js
|
|
544
|
+
| | +-- exercises.js
|
|
545
|
+
| | +-- quizQuestions.js
|
|
546
|
+
| | +-- achievements.js
|
|
547
|
+
| +-- components/
|
|
548
|
+
| | +-- layout/
|
|
549
|
+
| | +-- interactive/
|
|
550
|
+
| | +-- common/
|
|
551
|
+
| | +-- sections/
|
|
552
|
+
| +-- pages/
|
|
553
|
+
| +-- store/
|
|
554
|
+
| | +-- useStore.js
|
|
555
|
+
| +-- hooks/
|
|
556
|
+
+-- .github/
|
|
557
|
+
+-- workflows/
|
|
558
|
+
+-- deploy.yml
|
|
559
|
+
```
|
|
560
|
+
|
|
561
|
+
---
|
|
562
|
+
|
|
563
|
+
## 8. Установка зависимостей и сборка сгенерированного сайта
|
|
564
|
+
|
|
565
|
+
После генерации проекта необходимо установить зависимости и выполнить сборку.
|
|
566
|
+
|
|
567
|
+
### 8.1. Установка зависимостей
|
|
568
|
+
|
|
569
|
+
```bash
|
|
570
|
+
cd generated-site/
|
|
571
|
+
npm install
|
|
572
|
+
```
|
|
573
|
+
|
|
574
|
+
Это установит все зависимости из `package.json`:
|
|
575
|
+
|
|
576
|
+
| Зависимость | Версия | Назначение |
|
|
577
|
+
|-------------|--------|------------|
|
|
578
|
+
| react | ^19.0.0 | UI-библиотека |
|
|
579
|
+
| react-dom | ^19.0.0 | DOM-рендеринг |
|
|
580
|
+
| react-router-dom | ^7.0.0 | Маршрутизация SPA |
|
|
581
|
+
| zustand | ^5.0.0 | State management |
|
|
582
|
+
| @tailwindcss/vite | ^4.0.0 | TailwindCSS v4 интеграция с Vite |
|
|
583
|
+
| tailwindcss | ^4.0.0 | CSS-фреймворк |
|
|
584
|
+
| vite | ^6.0.0 | Сборщик |
|
|
585
|
+
| @vitejs/plugin-react | ^4.0.0 | React-плагин для Vite |
|
|
586
|
+
|
|
587
|
+
### 8.2. Запуск dev-сервера
|
|
588
|
+
|
|
589
|
+
```bash
|
|
590
|
+
npm run dev
|
|
591
|
+
```
|
|
592
|
+
|
|
593
|
+
Откройте `http://localhost:5173` в браузере. Вы увидите главную страницу образовательного сайта с навигацией по секциям.
|
|
594
|
+
|
|
595
|
+
### 8.3. Production-сборка
|
|
596
|
+
|
|
597
|
+
```bash
|
|
598
|
+
npm run build
|
|
599
|
+
```
|
|
600
|
+
|
|
601
|
+
Собранные файлы появятся в директории `dist/`. Размер: примерно 200-500 КБ в зависимости от объёма контента.
|
|
602
|
+
|
|
603
|
+
### 8.4. Предпросмотр production-сборки
|
|
604
|
+
|
|
605
|
+
```bash
|
|
606
|
+
npm run preview
|
|
607
|
+
```
|
|
608
|
+
|
|
609
|
+
Откройте предложенный URL для проверки production-версии локально.
|
|
610
|
+
|
|
611
|
+
### 8.5. Деплой на GitHub Pages
|
|
612
|
+
|
|
613
|
+
```bash
|
|
614
|
+
# Инициализируйте git (если ещё нет)
|
|
615
|
+
git init
|
|
616
|
+
git add .
|
|
617
|
+
git commit -m "Initial commit: generated edu site"
|
|
618
|
+
|
|
619
|
+
# Добавьте remote и push
|
|
620
|
+
git remote add origin https://github.com/your-username/your-repo.git
|
|
621
|
+
git push -u origin main
|
|
622
|
+
```
|
|
623
|
+
|
|
624
|
+
После push GitHub Actions автоматически запустит workflow `deploy.yml`, который:
|
|
625
|
+
1. Установит зависимости (`npm install`)
|
|
626
|
+
2. Соберёт проект (`npm run build`)
|
|
627
|
+
3. Задеплоит `dist/` на GitHub Pages
|
|
628
|
+
|
|
629
|
+
Сайт будет доступен по адресу `https://your-username.github.io/your-repo/`.
|
|
630
|
+
|
|
631
|
+
---
|
|
632
|
+
|
|
633
|
+
## 9. Интеграция с @dzhechkov/keysarium
|
|
634
|
+
|
|
635
|
+
### 9.1. Автоматическое определение
|
|
636
|
+
|
|
637
|
+
При запуске `npx @dzhechkov/skills-edu-site init` в директории, где уже установлен Keysarium (есть файл `.keysarium.json`), edu-site автоматически определяет это и интегрируется.
|
|
638
|
+
|
|
639
|
+
Проверить интеграцию можно через `doctor`:
|
|
640
|
+
|
|
641
|
+
```bash
|
|
642
|
+
npx @dzhechkov/skills-edu-site doctor
|
|
643
|
+
```
|
|
644
|
+
|
|
645
|
+
Строка `Keysarium integration` в выводе покажет статус:
|
|
646
|
+
- `Active (Keysarium v1.0.0)` — интеграция активна
|
|
647
|
+
- `Not installed (standalone edu-site mode)` — edu-site работает автономно
|
|
648
|
+
|
|
649
|
+
### 9.2. Использование в пайплайне Keysarium
|
|
650
|
+
|
|
651
|
+
Edu-site генератор может быть использован как дополнительный инструмент в Keysarium пайплайне для создания обучающих материалов по результатам исследования:
|
|
652
|
+
|
|
653
|
+
```
|
|
654
|
+
# После завершения исследования — создать обучающий сайт по его результатам
|
|
655
|
+
/edu-site researches/my-case/02_research_findings.md
|
|
656
|
+
|
|
657
|
+
# Создать обучающий сайт по документации разрабатываемого продукта
|
|
658
|
+
/edu-site "Обучение работе с [название продукта из кейса]"
|
|
659
|
+
```
|
|
660
|
+
|
|
661
|
+
### 9.3. Параллельное использование команд
|
|
662
|
+
|
|
663
|
+
После установки обоих пакетов в Claude Code доступны команды обоих пайплайнов одновременно:
|
|
664
|
+
|
|
665
|
+
```
|
|
666
|
+
# Keysarium команды
|
|
667
|
+
/casarium /discovery /explore-case /research
|
|
668
|
+
/cjm-prototype /solve /architecture-phase /presentation
|
|
669
|
+
|
|
670
|
+
# Edu-Site команда
|
|
671
|
+
/edu-site
|
|
672
|
+
```
|
|
673
|
+
|
|
674
|
+
Конфликтов между командами нет.
|
|
675
|
+
|
|
676
|
+
---
|
|
677
|
+
|
|
678
|
+
## 10. Обновление и удаление
|
|
679
|
+
|
|
680
|
+
### 10.1. Обновление установки
|
|
681
|
+
|
|
682
|
+
Для обновления edu-site до последней версии:
|
|
683
|
+
|
|
684
|
+
```bash
|
|
685
|
+
npx @dzhechkov/skills-edu-site update
|
|
686
|
+
```
|
|
687
|
+
|
|
688
|
+
Команда `update`:
|
|
689
|
+
1. Читает манифест `.edu-site-skills.json`, определяет установленные компоненты
|
|
690
|
+
2. Сравнивает текущие файлы с шаблонами нового пакета
|
|
691
|
+
3. Показывает diff по каждому изменённому файлу
|
|
692
|
+
4. Запрашивает подтверждение перед обновлением
|
|
693
|
+
|
|
694
|
+
```bash
|
|
695
|
+
# Предпросмотр изменений без записи
|
|
696
|
+
npx @dzhechkov/skills-edu-site update --dry-run
|
|
697
|
+
```
|
|
698
|
+
|
|
699
|
+
> **Рекомендация:** Перед обновлением зафиксируйте текущее состояние в git:
|
|
700
|
+
> ```bash
|
|
701
|
+
> git add .claude/ .edu-site-skills.json
|
|
702
|
+
> git commit -m "snapshot before skills-edu-site update"
|
|
703
|
+
> ```
|
|
704
|
+
|
|
705
|
+
### 10.2. Удаление установки
|
|
706
|
+
|
|
707
|
+
```bash
|
|
708
|
+
npx @dzhechkov/skills-edu-site remove
|
|
709
|
+
```
|
|
710
|
+
|
|
711
|
+
Команда `remove` удаляет только файлы, перечисленные в манифесте. Файлы Keysarium (если они есть в тех же директориях) не затрагиваются. После удаления манифест `.edu-site-skills.json` также удаляется.
|
|
712
|
+
|
|
713
|
+
> **Важно:** Ранее сгенерированные сайты (в отдельных директориях) НЕ удаляются командой `remove`. Удаляются только файлы скилла из `.claude/`.
|
|
714
|
+
|
|
715
|
+
---
|
|
716
|
+
|
|
717
|
+
## 11. Устранение неполадок
|
|
718
|
+
|
|
719
|
+
### 11.1. Ошибка: "Edu-Site skill pack is already installed"
|
|
720
|
+
|
|
721
|
+
```
|
|
722
|
+
WARN Edu-Site skill pack is already installed in this directory.
|
|
723
|
+
Run @dzhechkov/skills-edu-site update to update, or use --force to overwrite.
|
|
724
|
+
```
|
|
725
|
+
|
|
726
|
+
**Причина:** Файл `.edu-site-skills.json` уже существует в директории.
|
|
727
|
+
|
|
728
|
+
**Решение:**
|
|
729
|
+
```bash
|
|
730
|
+
# Вариант 1: обновить существующую установку
|
|
731
|
+
npx @dzhechkov/skills-edu-site update
|
|
732
|
+
|
|
733
|
+
# Вариант 2: принудительно перезаписать
|
|
734
|
+
npx @dzhechkov/skills-edu-site init --force
|
|
735
|
+
```
|
|
736
|
+
|
|
737
|
+
### 11.2. Ошибки Vite при сборке (npm run build)
|
|
738
|
+
|
|
739
|
+
```
|
|
740
|
+
Error: Could not resolve "./components/interactive/Quiz" from "src/App.jsx"
|
|
741
|
+
```
|
|
742
|
+
|
|
743
|
+
**Причина:** Отсутствует файл компонента или неверный путь импорта.
|
|
744
|
+
|
|
745
|
+
**Решение:**
|
|
746
|
+
1. Убедитесь, что пайплайн завершился без ошибок (все 8 шагов показали PASS)
|
|
747
|
+
2. Проверьте структуру директории `src/components/`:
|
|
748
|
+
```bash
|
|
749
|
+
find src/components -name "*.jsx" | sort
|
|
750
|
+
```
|
|
751
|
+
3. Если файл действительно отсутствует — повторно запустите `/edu-site` с теми же входными данными
|
|
752
|
+
|
|
753
|
+
### 11.3. Ошибки TailwindCSS v4
|
|
754
|
+
|
|
755
|
+
```
|
|
756
|
+
Error: Cannot find module 'tailwindcss'
|
|
757
|
+
```
|
|
758
|
+
|
|
759
|
+
**Причина:** Зависимости не установлены или установлена несовместимая версия TailwindCSS.
|
|
760
|
+
|
|
761
|
+
**Решение:**
|
|
762
|
+
```bash
|
|
763
|
+
# Убедитесь, что зависимости установлены
|
|
764
|
+
npm install
|
|
765
|
+
|
|
766
|
+
# Если проблема сохраняется — очистите кеш и переустановите
|
|
767
|
+
rm -rf node_modules package-lock.json
|
|
768
|
+
npm install
|
|
769
|
+
```
|
|
770
|
+
|
|
771
|
+
**Ошибка:** `@tailwindcss/vite requires TailwindCSS v4`
|
|
772
|
+
|
|
773
|
+
```bash
|
|
774
|
+
# Проверьте версию TailwindCSS
|
|
775
|
+
npm ls tailwindcss
|
|
776
|
+
|
|
777
|
+
# Должна быть v4.x.x
|
|
778
|
+
# Если версия ниже — обновите:
|
|
779
|
+
npm install tailwindcss@latest @tailwindcss/vite@latest
|
|
780
|
+
```
|
|
781
|
+
|
|
782
|
+
### 11.4. Ошибка: отсутствуют зависимости при npm install
|
|
783
|
+
|
|
784
|
+
```
|
|
785
|
+
npm ERR! peer dep missing: react@^19.0.0
|
|
786
|
+
```
|
|
787
|
+
|
|
788
|
+
**Решение:**
|
|
789
|
+
```bash
|
|
790
|
+
# Установите с флагом --legacy-peer-deps если есть конфликты
|
|
791
|
+
npm install --legacy-peer-deps
|
|
792
|
+
|
|
793
|
+
# Или обновите Node.js до версии 20+ и npm до 10+
|
|
794
|
+
nvm install 20
|
|
795
|
+
nvm use 20
|
|
796
|
+
npm install
|
|
797
|
+
```
|
|
798
|
+
|
|
799
|
+
### 11.5. GitHub Pages показывает 404
|
|
800
|
+
|
|
801
|
+
**Причина 1:** Неверный base path в `vite.config.js`.
|
|
802
|
+
|
|
803
|
+
**Решение:**
|
|
804
|
+
Откройте `vite.config.js` и проверьте значение `base`:
|
|
805
|
+
```javascript
|
|
806
|
+
// Должно совпадать с именем вашего репозитория
|
|
807
|
+
export default defineConfig({
|
|
808
|
+
base: '/your-repo-name/',
|
|
809
|
+
// ...
|
|
810
|
+
})
|
|
811
|
+
```
|
|
812
|
+
|
|
813
|
+
Если репозиторий имеет формат `username.github.io` (user site), base должен быть `/`:
|
|
814
|
+
```javascript
|
|
815
|
+
export default defineConfig({
|
|
816
|
+
base: '/',
|
|
817
|
+
// ...
|
|
818
|
+
})
|
|
819
|
+
```
|
|
820
|
+
|
|
821
|
+
**Причина 2:** GitHub Actions workflow не настроен.
|
|
822
|
+
|
|
823
|
+
**Решение:**
|
|
824
|
+
1. Перейдите в Settings > Pages в вашем репозитории
|
|
825
|
+
2. В Source выберите "GitHub Actions"
|
|
826
|
+
3. Убедитесь, что файл `.github/workflows/deploy.yml` существует
|
|
827
|
+
4. Сделайте push — workflow запустится автоматически
|
|
828
|
+
|
|
829
|
+
**Причина 3:** React Router не настроен для GitHub Pages.
|
|
830
|
+
|
|
831
|
+
SPA требует обработки всех маршрутов через `index.html`. Сгенерированный проект использует `HashRouter` вместо `BrowserRouter`, что корректно работает с GitHub Pages без дополнительной конфигурации сервера.
|
|
832
|
+
|
|
833
|
+
### 11.6. Сайт отображается без стилей
|
|
834
|
+
|
|
835
|
+
**Причина:** TailwindCSS v4 CSS не подключён или не собирается.
|
|
836
|
+
|
|
837
|
+
**Решение:**
|
|
838
|
+
Проверьте, что в `src/main.jsx` (или `src/main.js`) есть импорт CSS:
|
|
839
|
+
```javascript
|
|
840
|
+
import './app.css'
|
|
841
|
+
```
|
|
842
|
+
|
|
843
|
+
Проверьте, что `src/app.css` содержит директиву TailwindCSS v4:
|
|
844
|
+
```css
|
|
845
|
+
@import "tailwindcss";
|
|
846
|
+
```
|
|
847
|
+
|
|
848
|
+
### 11.7. Zustand store не сохраняет прогресс после перезагрузки страницы
|
|
849
|
+
|
|
850
|
+
**Причина:** Persist middleware не настроен или localStorage недоступен.
|
|
851
|
+
|
|
852
|
+
**Решение:**
|
|
853
|
+
Проверьте `src/store/useStore.js`:
|
|
854
|
+
```javascript
|
|
855
|
+
import { create } from 'zustand'
|
|
856
|
+
import { persist } from 'zustand/middleware'
|
|
857
|
+
|
|
858
|
+
const useStore = create(
|
|
859
|
+
persist(
|
|
860
|
+
(set) => ({
|
|
861
|
+
// ... state
|
|
862
|
+
}),
|
|
863
|
+
{
|
|
864
|
+
name: 'edu-site-storage', // key в localStorage
|
|
865
|
+
}
|
|
866
|
+
)
|
|
867
|
+
)
|
|
868
|
+
```
|
|
869
|
+
|
|
870
|
+
Убедитесь, что localStorage доступен (не заблокирован настройками браузера или режимом инкогнито).
|
|
871
|
+
|
|
872
|
+
### 11.8. Команда /edu-site не отображается в Claude Code
|
|
873
|
+
|
|
874
|
+
**Причина 1:** Вы не в директории проекта, где установлен edu-site.
|
|
875
|
+
|
|
876
|
+
**Решение:**
|
|
877
|
+
```bash
|
|
878
|
+
# Убедитесь, что Claude Code запущен в правильной директории
|
|
879
|
+
ls .edu-site-skills.json
|
|
880
|
+
# Если файл не найден — перейдите в правильную директорию и запустите claude снова
|
|
881
|
+
```
|
|
882
|
+
|
|
883
|
+
**Причина 2:** Claude Code был открыт до установки edu-site.
|
|
884
|
+
|
|
885
|
+
**Решение:** Закройте и снова откройте Claude Code.
|
|
886
|
+
|
|
887
|
+
### 11.9. Ошибка при генерации: "Could not fetch documentation URL"
|
|
888
|
+
|
|
889
|
+
**Причина:** URL недоступен, сайт требует авторизации, или присутствует anti-bot защита.
|
|
890
|
+
|
|
891
|
+
**Решение:**
|
|
892
|
+
```bash
|
|
893
|
+
# Вариант 1: скачайте контент вручную и передайте как файл
|
|
894
|
+
curl -o docs.md https://docs.example.com/cli-reference
|
|
895
|
+
/edu-site ./docs.md
|
|
896
|
+
|
|
897
|
+
# Вариант 2: вставьте текст напрямую в чат Claude Code
|
|
898
|
+
/edu-site "Вот текст документации: [вставьте текст]"
|
|
899
|
+
|
|
900
|
+
# Вариант 3: используйте описание темы
|
|
901
|
+
/edu-site "Обучение работе с CLI-инструментом Example: команды init, build, deploy"
|
|
902
|
+
```
|
|
903
|
+
|
|
904
|
+
### 11.10. Таблица кодов выхода CLI
|
|
905
|
+
|
|
906
|
+
| Код | Значение |
|
|
907
|
+
|-----|---------|
|
|
908
|
+
| `0` | Успешное выполнение |
|
|
909
|
+
| `1` | Ошибка (неверные аргументы, файлы не найдены, проверки не пройдены) |
|
|
910
|
+
|
|
911
|
+
При коде выхода `1` в `doctor` — прочитайте раздел "Fix suggestions" в выводе. При коде `1` в `init` или `update` — прочитайте сообщение об ошибке и следуйте инструкциям.
|