Maxim Dolgolyov
|
bbfde0db51
|
@
feat(chemistry-8): перестройка раздела intro под эталон учебников (SPA-движок)
По замечанию: учебник не соответствовал структуре/наполнению других учебников.
Перестроено по контракту глав физики (para-selector SPA + движок задач):
- chem8_engine.js — общий движок: para-selector, ленивая сборка §, makeCard,
тренажёр задач (числовой ввод + MCQ, nav-dots, score), sidebar-шпаргалка с XP,
уровни/достижения, серверная синхронизация прогресса, тема. Конфиг — CHEM8_CFG.
- chem8-textbook.css — фреймворк-CSS: layout+sidebar, hero, psel-карточки,
para-hero (9 градиентов), карточки теории, def/remember/insight, тренажёр,
mcq, флагман-карточки, виджеты, ach-popup (amber-палитра).
- chem8_intro_widgets.js — виджеты § (карта элементов, Mr, порция, Авогадро,
M+объём) и флагманы (треугольник n–m–M, калькулятор газа, балансировщик,
пошаговый решатель) на chem8_svg.js.
- chemistry_8_intro.html — перестроен: PARAS, build_p1..p9+pr1+final, POOLS
(38 задач), SIDEBARS, TIPS. Богатая анатомия § как в физике.
Тесты: 23/23 (юнит + jsdom-виджеты + полностраничный jsdom SPA — para-selector,
активный §, монтаж виджетов, тренажёр, без ошибок скриптов). Ассеты отдаются 200.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@
|
2026-05-30 15:05:07 +03:00 |
|
Maxim Dolgolyov
|
39515af6bf
|
@
feat(chemistry-8): Phase 1 — раздел «Количественные понятия» (§1–9 + ПР1)
Полноценная интерактивная страница chemistry_8_intro.html (9 § + ПР1 + босс):
- §1 карта элементов (Z, название, Ar), §2 калькулятор Mr по формуле
- §3 «порция вещества» n⇒N,m, §4 счётчик частиц N=n·N_A, §5 M+молярный объём
- §6 звёздный виджет: интерактивный треугольник n–m–M
- §7 универсальный калькулятор газа (m–n–V–N), §8 балансировщик уравнений
- §9 пошаговый решатель по уравнению; босс раздела (4 задачи) + ачивка «Счёт в химии»
- прогресс/XP через /api/textbooks/chemistry-8-intro/progress, scrollspy, тема
chem8_svg.js: реализованы движки — molarMass (школьные Ar: Mr(H2O)=18),
elementCounts, moleTriangle, equationBalancer (+ fmt, arOf).
Фикс порядка загрузки: инициализация обёрнута в DOMContentLoaded (defer-скрипты
готовы к этому моменту). Генератор каркасов получил skip-if-exists (--force для перезаписи).
Тесты: chemistry8.test.js (14) + chemistry8-dom.test.js (jsdom-смоук виджетов, 3) — 17/17.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@
|
2026-05-30 14:40:56 +03:00 |
|
Maxim Dolgolyov
|
a587cf3b1e
|
@
feat(chemistry-8): Phase 0 — каркас учебника «Химия 8» (hub + 7 глав)
Архитектура hub + главы (как физика 7–11, алгебра, геометрия), не монолит.
- chemistry_8_hub.html: хаб-каталог 7 разделов, amber-палитра, прогресс из
/api/textbooks/chemistry-8/children, achievement «Химик 8 класса»
- 7 каркасов глав (вводный + гл.1–6, §1–52) с оглавлением и баннером «в разработке»
- /js/chem8_svg.js: неймспейс Chem8 (formula/ionLabel/chemEq готовы, 13 хелперов-заглушек)
- миграция 041: родитель chemistry-8 + 7 детей (parent_slug), para_count сумма = 52
- gen_chem8_skeletons.js: генератор каркасов глав
- tests/chemistry8.test.js: 9 тестов (примитивы + целостность каркаса), все зелёные
- PLAN_CHEMISTRY_8.md обновлён под hub-архитектуру
Источник: Шиманович, Красицкий, Сечко, Хвалюк. Химия 8, Народная асвета, 2018.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@
|
2026-05-30 14:40:55 +03:00 |
|