Files
Learn_System/.claude/memory/project_dashboard_rebuild.md
T
Maxim Dolgolyov 8a7091ddec chore(memory): снимок файлов памяти Claude в репозиторий для переноса
Копия пользовательской автопамяти (29 фактов + индекс MEMORY.md) в
.claude/memory/, чтобы переносить между машинами через git.
README.md — как восстановить в пользовательскую папку на другой машине.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-05 08:32:16 +03:00

31 lines
3.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
name: project_dashboard_rebuild
description: План пересборки главной dashboard.html по скриншоту (hero-карточки + синхрон питомца); редизайн был утерян
metadata:
node_type: memory
type: project
originSessionId: 4eebe34f-0200-4613-bc0c-e884c7496721
---
Боевой редизайн `frontend/dashboard.html` (питомец Квантик, «Начать чтение», «Лаборатория дня», колонки Задания/Тесты/Активность) был **некоммичен** и перезаписан коммитом flashcards `1dcc4cb`. В git/stash/dangling/VSCode Local History его НЕТ — восстановить нельзя, пересобираем по скриншоту пользователя (2026-05-31).
**Базис — живой `frontend/dashboard.html`** (НЕ мокап `dashboard-redesign.html` — там чужой Linear-дизайн, филин «Архивариус», игнорировать). Дизайн-система: `/css/ls.css`, шрифты Unbounded+Manrope, тёмная тема, палитра #9B5DE5/#06D6E0/#F9C74F.
**Правки от пользователя:**
- Убрать блок «Теория — в процессе» (`loadTheoryWidget` / `w-theory-progress`).
- Рейтинг уже перенесён в профиль — на дашборде не показывать (lb-section).
- Питомец на дашборде синхронизирован с модулем через `window.PetSprite.render(level, mood, accessories, color, streak)` + GET `/api/pet`.
**Что уже есть в живом файле (loaders готовы):** loadAssignments (~2015), loadContinueWidget (3108, `/api/courses/continue`), loadActivityWidget (3174), loadFlashcardWidget (3937, `/api/flashcards/random`, СОХРАНИТЬ виджет #w-flashcard / «Повтори карточку»), loadGamification (1721), loadSubjects (1980, → блок «Тесты»). Markup: hero-зона = `.action-zone` (1380), 3 колонки = `.main-grid` (1465): #w-assignments / #w-tests / #w-progress-col.
**Hero-карточки со скрина (3 шт, заменяют .action-cards):**
1. «Начать чтение» Химия 9 класс, прогресс % → `/api/courses/continue` (есть loadContinueWidget).
2. «Лаборатория дня» Газовые законы → SVG из `window.LabPreviews` (frontend/js/lab-previews.js: keys opticsbench/circuit/pendulum/waves/isoprocess/stereo).
3. «Питомец» Квантик, уровень/стрик/настроение → `/api/pet` + PetSprite.
**Ассеты уцелели (untracked, НЕ трогать):** `frontend/js/pet-sprite.js` (window.PetSprite), `frontend/js/lab-previews.js` (window.LabPreviews). Их надо подключить `<script src>` в dashboard.html.
**Pet API** (`/api/pet`, petController.js): возвращает petName('Квантик'), petLevel, mood (ecstatic/happy/neutral/sad/hungry/sleeping), accessories[], petColor, streakCurrent, level. PetSprite.moodLabel(mood) → рус. ярлык.
**Порядок (фазами, коммит после каждой):** Ф1 — hero-карточки (чтение+лаба+питомец) + подключить 2 скрипта; Ф2 — синхрон питомца с live-данными; Ф3 — почистить Теорию/Рейтинг. См. [[project_concurrent_sessions_branch]] (fetch перед работой, add поимённо), [[feedback_verify_edits_applied]].