Files
Learn_System/plans/textbooks-7/PLAN_CHEMISTRY_7.md
T
Maxim Dolgolyov 6c1e003340 docs(textbooks): план реализации интерактивного учебника Химия 7
Полный план учебника Химия 7 (Беларусь, Шиманович 2023): 26 §, 4 главы,
5 лаб. опытов, 4 практ. работы. Архитектура hub + 4 главы (как Химия 8),
карта интерактивов по каждому §, химический стандарт качества,
миграция 046, фазы 0-6, ачивки. Строго по программе 7 класса.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-05-30 17:57:45 +03:00

43 KiB
Raw Blame History

План реализации: Химия 7 (Беларусь) — интерактивный наглядный учебник

Цель: создать с нуля интерактивный наглядный учебник по всей программе 7 класса в современной архитектуре hub + главы (как Химия 8 / Физика 7–11 / Алгебра / Геометрия), на уровне их качества, с поправкой на содержание 7 класса.

7 класс — это ПЕРВЫЙ курс химии у школьника. Поэтому всё качественно и наглядно, БЕЗ количественной химии 8 класса (нет моля, молярной массы, расчётов по уравнениям, периодического закона, строения атома, химической связи, ТЭД, ионных уравнений, степени окисления). Акцент — на первоначальные понятия (вещество, атом, элемент, молекула, формула, валентность, химическая реакция, уравнение) и первое знакомство с кислородом, водородом, водой и важнейшими классами соединений (оксиды, кислоты, соли, основания) на уровне состава, наглядных свойств и качественных реакций.

Архитектура (по образцу Химии 8): chemistry_7_hub.html (хаб-каталог глав) + 4 файла глав. В БД — родитель chemistry-7 + 4 ребёнка с parent_slug. Каждая глава — самостоятельная страница со своими § (см. карту ниже), модульный CSS/JS на предмет. Единый стандарт с ../textbooks-8/PLAN_CHEMISTRY_8.md и ../textbooks-9/PLAN_CHEMISTRY_9.md.


🎯 Источник

Параметр Значение
Книга himiya_7kl_shimanovich_rus_2023 (1).pdf
Авторы Шиманович И. Е., Красицкий В. А., Сечко О. И., Хвалюк В. Н.
Изд. Минск, «Народная асвета», 2023 (2-е издание, пересмотренное), 175 с., тираж 121 000
Структура 4 главы, 26 §, 5 лабораторных опытов, 4 практические работы, 7 приложений
Справочные таблицы (приложения) ряд активности металлов (Прил.4), расчёт массовой доли элемента (Прил.3), бытовые названия веществ (Прил.6), единицы массы/объёма (Прил.7), вода в природе (Прил.5)

PDF лежит в G:\Dev\Тесты\Методички\тест_6 класс\Книги\. Оглавление — стр. 3–4 PDF. Авторов в hub НЕ показываем (политика проекта, см. ../textbooks-7/PLAN_PHYSICS_7.md).

Важные отличия от Химии 8:

  1. Это первый курс химии — объяснять с нуля, простым языком, максимум наглядности.
  2. Качественно, не количественно: валентность (а не степень окисления), M_r как «во сколько раз тяжелее» (без моля и M), баланс уравнений подбором (без стехиометрии).
  3. Классы соединений даются в порядке знакомства по ходу курса (оксиды — в теме «Кислород», кислоты и соли — в теме «Водород», основания — в теме «Вода»), а НЕ единой главой как в 8 кл.
  4. Индикаторы (лакмус, метилоранж, фенолфталеин), ряд активности, признаки реакций — ядро наглядности курса.

Соответствие «глава книги → файл главы → slug»:

Глава книги § Файл slug Цвет
Гл.I Первоначальные химические понятия 112 chemistry_7_ch1.html chemistry-7-ch1 emerald
Гл.II Кислород 1317 chemistry_7_ch2.html chemistry-7-ch2 sky/cyan
Гл.III Водород 1822 chemistry_7_ch3.html chemistry-7-ch3 violet
Гл.IV Вода 2326 chemistry_7_ch4.html chemistry-7-ch4 blue

Хаб: chemistry_7_hub.html / slug chemistry-7 (родитель в каталоге). Палитра hub — emerald/green (первые шаги в химии, природа, вода), не пересекается с Химией 8 (amber) и Химией 9 (amber).


📗 ПОЛНАЯ КАРТА СОДЕРЖАНИЯ (26 §)

Колонка «Интерактив» — главный наглядный элемент сверх текста (минимум 1 «звёздный» виджет на §; полный набор — в стандарте ниже).

ГЛАВА I. Первоначальные химические понятия (§§1–12) — emerald

§ Тема Ключ Интерактив (звёздный виджет)
§1 Химия — наука о веществах вещество vs тело; свойства веществ; наблюдение/опыт; лаб. оборудование, ТБ Виртуальная лаборатория-знакомство (наведи на оборудование → название/назначение + правило ТБ) + DnD «тело / вещество»
§2 Чистые вещества и смеси однородные/неоднородные смеси; способы разделения Симулятор разделения смесей (фильтрование, выпаривание, отстаивание, дистилляция, магнит) + классификатор
§3 Атомы. Химические элементы атом; химический элемент; символы элементов Тренажёр символов элементов (название↔символ) + мини-ПСХЭ как каталог (miniPeriodic)
§4 Относительная атомная масса A_r; а.е.м. = 1/12 массы атома C «Весы атомов»: во сколько раз атом X тяжелее H/C; поиск A_r по элементу
§5 Молекулы. Простые вещества молекула; простое вещество; атомность O₂, O₃, H₂, металлы 3D-модели простых веществ (biochem-core: H₂, O₂, O₃, N₂) + классификатор «атом/молекула/простое»
§6 Сложные вещества атомы разных элементов: H₂O, CO₂, CH₄, NH₃ 3D-модели сложных веществ + DnD «простое / сложное»
§7 Химическая формула индекс, коэффициент; качественный/количественный состав; чтение формул Парсер/конструктор формулы (формула → какие атомы и сколько) + «читалка» (аш-два-о)
§8 Относительная молекулярная масса M_r = Σ A_r·index Калькулятор M_r (biochem-core) с пошаговым разбором + калькулятор массовой доли элемента w(A) (Прил.3)
§9 Валентность валентность по водороду; H–I, O–II; составление формул по валентности Конструктор формул по валентности (2 элемента + валентности → НОК индексов + проверка) + «черточки валентности»
§10 Явления физические и химические. Признаки химических реакций признаки: цвет, осадок, газ, запах, тепло/свет Детектор признаков реакции (малахит→CuO+H₂O+CO₂; CuSO₄+NaOH→синий осадок) testTube + DnD «физ./хим. явление»
§11 Закон сохранения массы. Химические уравнения m(реагентов)=m(продуктов); Ломоносов/Лавуазье «Весы сохранения массы» (анимация: реагенты ⇄ продукты, баланс) + знакомство с уравнением
§12 Составление уравнений химических реакций подбор коэффициентов; баланс атомов Балансировщик уравнений (equationBalancer: P+O₂→P₂O₅, Fe+O₂→Fe₃O₄, H₂+O₂→H₂O, CH₄+O₂→CO₂+H₂O)

Лаб. опыт 1 (после §10): признаки протекания химических реакций. Практическая работа 1 (после §2): знакомство с химической лабораторией, разделение смесей.

ГЛАВА II. Кислород (§§13–17) — sky/cyan

§ Тема Ключ Интерактив
§13 Воздух как смесь газов состав воздуха: N₂ 78 %, O₂ 21 %, Ar, CO₂ Интерактивная диаграмма состава воздуха (круговая, клик → доля газа) + связь со §2 (смесь)
§14 Кислород как химический элемент и простое вещество O (элемент) vs O₂ (вещество); озон O₃; нахождение в природе; физ. свойства Переключатель «элемент ↔ простое вещество» + 3D O₂/O₃ + «паспорт» кислорода
§15 Химические свойства кислорода горение: C, S, P, Fe + O₂ → оксиды; окисление, медленное окисление Симулятор горения (выбери вещество → реакция с O₂ → оксид + уравнение + пламя) chemEq
§16 Оксиды оксид = Э + O (бинарное); названия; CuO, CO₂, SO₂, P₂O₅, Fe₃O₄, H₂O Конструктор оксида (элемент + валентность → формула) + классификатор «оксид / не оксид»
§17 Получение кислорода разложение KMnO₄, H₂O₂ (+кат. MnO₂); катализатор; реакция разложения Схема получения O₂ (разложение при нагреве; катализатор — ускоряет, не расходуется, анимация)

Лаб. опыт 2 (после §13): сборка простейших приборов для получения и собирания газов. Практическая работа 2 (после §17): получение кислорода и изучение его свойств (тлеющая лучинка → вспыхивает).

ГЛАВА III. Водород (§§18–22) — violet

§ Тема Ключ Интерактив
§18 Водород — химический элемент и простое вещество H, H₂; самый лёгкий газ; нахождение; физ. свойства 3D-модель H₂ + «паспорт» водорода + демонстрация «легче воздуха»
§19 Химические свойства водорода H₂+O₂→H₂O (гремучий газ); H₂+CuO→Cu+H₂O (восстановление); восстановитель Симулятор реакций H₂ (восстановление оксида: чёрный CuO → красная Cu) chemEq
§20 Понятие о кислотах кислота = H + кислотный остаток; HCl, H₂SO₄, HNO₃, H₂SO₃, H₂CO₃; индикаторы indicatorScale (лакмус красный, метилоранж розовый в кислоте) + конструктор «кислота → остаток»
§21 Взаимодействие кислот с металлами Me + кислота → соль + H₂↑; ряд активности (Прил.4); Cu/Ag не реагируют Интерактивный ряд активности (activitySeries: K…H₂…Au, клик металл → реагирует/нет, пузырьки H₂) + Zn+HCl (testTube)
§22 Соли — продукты замещения H на металл соль = Me + кислотный остаток; реакция замещения; хлориды/сульфаты/нитраты Конструктор солей (металл + кислотный остаток → формула по валентности) + анимация замещения

Лаб. опыт 3 (после §20): действие кислот на индикаторы. Лаб. опыт 4 (после §21): взаимодействие серной и соляной кислот с металлами. Практическая работа 3 (после §22): получение водорода и изучение его свойств (Zn+HCl, «гремучий газ»).

ГЛАВА IV. Вода (§§23–26) — blue

§ Тема Ключ Интерактив
§23 Состав, физические и химические свойства воды H₂O; разложение эл. током → H₂+O₂ (2:1); Na+H₂O→щёлочь+H₂; оксид+H₂O→кислота/основание; круговорот Разложение воды (анимация 2:1 H₂:O₂) + реакции воды (Na, CaO, CO₂) + круговорот воды (Прил.5)
§24 Основания как сложные вещества основание = Me + OH; NaOH, KOH, Ca(OH)₂; щёлочи vs нерастворимые; индикаторы Конструктор оснований Me(OH)ₙ + indicatorScale (фенолфталеин малиновый, лакмус синий) + классификатор
§25 Реакция нейтрализации кислота + основание → соль + вода; HCl+NaOH→NaCl+H₂O; экзотермическая Анимация нейтрализации (фенолфталеин малиновый → бесцветный; sim titration) chemEq
§26 Охрана окружающей среды загрязнение воды/воздуха; кислотные дожди; очистка воды; бережное отношение Инфографика-исследование (источники загрязнения, очистка воды — Прил.5)

Лаб. опыт 5 (после §24): действие щелочей на индикаторы. Практическая работа 4 (после §25): реакция нейтрализации.

Итого: 26 §, 4 главы, 5 лаб. опытов (§10, §13, §20, §21, §24), 4 практические работы (§2, §17, §22, §25), 7 приложений.


⚗️ ХИМИЧЕСКИЙ СТАНДАРТ КАЧЕСТВА

A. Движки и переиспользуемые активы (всё уже есть в проекте)

Что нужно Берём из Файл / id
Парсинг формул, M_r/A_r, состав вещества biochem-core frontend/js/biochem-core.js
2D/3D шаростержневые модели молекул biochem-core frontend/js/biochem-core.js
Рендер формул/ионов/уравнений (formula, ionLabel, chemEq) chem8_svg frontend/js/chem8_svg.js (window.Chem8)
Индикаторы, ряд активности, классификаторы, testTube chem8_svg (виджеты разд. B Химии 8) переиспользовать / доработать
Интерактивная ПСХЭ (как каталог элементов) sim periodic реестр _register-all.js
Песочница реакций sim chemsandbox реестр
Титрование / нейтрализация sim titration реестр
Качественный анализ / индикаторы sim qualanalysis реестр

Монтаж sim: контейнер <div id="sim-<id>"></div> + openSim('<id>') (или прямой mount через window.LabRegistry), как на остальных страницах. Глоссарий — по образцу chem8_glossary.js.

B. Хелпер /js/chem7_svg.js (тонкая надстройка над chem8_svg.js)

Рекомендация: НЕ дублировать химические примитивы. formula, ionLabel, chemEq, indicatorScale, activitySeries, testTube, classifier уже есть/планируются в chem8_svg.js (window.Chem8). chem7_svg.js должен переиспользовать их (через window.Chem8.*) и добавить только то, что специфично для 7 класса. План Химии 9 уже рекомендует свести химические примитивы в общий chem_svg.js — при совместной разработке довести до единого shared-модуля. Молекулы — только через biochem-core.js.

// 1. Конструктор формулы по валентности (звёздный виджет §9):
//    выбор 2 элементов + их валентностей → НОК → индексы → формула + структурная схема
const valenceBuilder = (mount, {elements}) => { /* H-I, O-II, Cl-I, ...; НОК(v1,v2) */ };

// 2. Тренажёр символов элементов (§3): название ↔ символ (карточки/квикфайр)
const elementSymbolDrill = (mount, {set}) => { /* H,O,C,N,Na,Cl,Fe,Cu,Ca,Al,Zn,S,P,Mg,K */ };

// 3. «Весы атомов» (§4): сравнение масс атомов в а.е.м., во сколько раз тяжелее
const atomBalance = (mount, {a, b}) => { /* визуальные весы + A_r */ };

// 4. Разделитель смесей (§2): смесь → выбор метода (фильтр/выпаривание/магнит/дистилляция)
const mixtureSeparator = (mount, {mixtures}) => { /* анимация разделения, проверка метода */ };

// 5. Детектор признаков реакции (§10): анимация опыта + чек-лист признаков (цвет/осадок/газ/запах/тепло)
const reactionSigns = (mount, {demo}) => { /* малахит↘, CuSO4+NaOH↘синий, S+O2 запах */ };

// 6. «Весы сохранения массы» (§11): слева реагенты, справа продукты, стрелка баланса m=m
const massConservation = (mount, {eq}) => { /* m(реаг)=m(прод), визуальные весы */ };

// 7. Балансировщик уравнений подбором (§12): матрица атомов, подсветка дисбаланса, без стехиометрии
const equationBalancer = (mount, {skeleton}) => { /* коэффициенты, проверка баланса атомов */ };

// 8. Симулятор горения (§15): вещество (C/S/P/Fe) + O2 → оксид + пламя/искры + уравнение
const combustionSim = (mount, {fuel}) => { /* SVG-пламя + chemEq продукта */ };

// 9. Конструктор оксида/соли/основания (§16,22,24): Me/Э + валентность/остаток → формула
const compoundBuilder = (mount, {kind}) => { /* kind: 'oxide'|'salt'|'base'; по валентности */ };

// 10. Диаграмма состава воздуха (§13): интерактивная круговая (N2 78, O2 21, Ar, CO2)
const airComposition = (mount) => { /* клик сектор → газ + доля */ };

// 11. Разложение воды (§23): анимация электролиза, объёмы H2:O2 = 2:1
const waterDecomp = (mount) => { /* две пробирки над электродами, 2:1 */ };

// 12. Калькулятор массовой доли элемента (Прил.3, §8): w(A) = A_r·x / M_r, пошагово
const massFraction = (mount, {formula}) => { /* w(O) в H3PO4 = 65,3 % */ };

indicatorScale, activitySeries, testTube, classifier, miniPeriodicиз chem8_svg.js (если там пока заглушки — реализовать там же и переиспользовать в обоих учебниках).

C. Правила рендера химии (обязательны с §1)

  1. Формулы веществ — нижние индексы для атомов (H₂O, CaCO₃) через Chem8.formula/ chemEq, не «сырой» текст. Зарядов ионов и степеней окисления в 7 классе НЕТ.
  2. Уравнения реакций — всегда сбалансированы; стрелки =/, (газ), (осадок), условия над стрелкой (t, кат., эл. ток). Только реакции из программы 7 класса.
  3. Валентность, а не степень окисления: схемы «черточек» (H–Cl, H–O–H), составление формул по валентности (НОК индексов).
  4. Признак реакции — для каждой качественной/наглядной реакции показывать видимый признак: цвет осадка, пузырьки газа, изменение окраски индикатора, пламя (через testTube/indicatorScale/combustionSim).
  5. Молекулярные модели — структурная формула + 3D (biochem-core) для изучаемых веществ (H₂, O₂, O₃, N₂, H₂O, CO₂, CH₄, NH₃, HCl).
  6. Цвета — химически достоверные: осадок Cu(OH)₂ голубой, малахит зелёный→CuO чёрный, медь красная, сера жёлтая; индикаторы: лакмус (кислота — красный, щёлочь — синий), метилоранж (кислота — розовый), фенолфталеин (щёлочь — малиновый).
  7. Безопасность — где уместно (кислоты, щёлочи, Na+вода, гремучий газ) — заметка-«скрепка»; в практических работах — блок «Правила ТБ».
  8. KaTeX-эскейпы — в JS-шаблонах двойной backslash (\\to, \\downarrow, \\uparrow).
  9. Drag/слайдерыwindow-listeners + {passive:false} + state ВЫШЕ redraw() (стандарт геометрии), touch-action:none на draggable SVG/canvas, без setPointerCapture.
  10. Без эмоджи — только inline SVG .ic (правило проекта feedback_no_emoji).
  11. Простой язык — это первый курс химии; определения короткие, на каждое понятие — наглядность.

D. Типы интерактивов по темам 7 класса

Тип темы Интерактив
Вещества/смеси (§1,2,13) mixtureSeparator, классификатор, airComposition, виртуальная лаборатория
Атомы/элементы (§3,4) elementSymbolDrill, miniPeriodic, atomBalance
Молекулы/вещества (§5,6) biochem-core 3D, классификатор «простое/сложное»
Формулы/M_r/валентность (§7,8,9) парсер формулы, калькулятор M_r, valenceBuilder, massFraction
Реакции/уравнения (§10,11,12) reactionSigns, massConservation, equationBalancer
Кислород/горение/оксиды (§14,15,16,17) combustionSim, compoundBuilder('oxide'), схема получения, sim chemsandbox
Водород/кислоты/соли (§18,19,20,21,22) 3D H₂, indicatorScale, activitySeries, testTube, compoundBuilder('salt')
Вода/основания/нейтрализация (§23,24,25) waterDecomp, compoundBuilder('base'), indicatorScale, sim titration
Прикладное/экология (§26, Прил.) инфографика-исследование, бытовые названия (Прил.6), единицы (Прил.7)

📦 СТРУКТУРА КАЖДОГО § (стандарт наполнения)

Теория (3 карточки):

  • theory — основное определение/понятие + наглядная SVG/модель
  • rule — ключевое правило/закономерность/формула (рамка)
  • example — разобранный пример (реакция / составление формулы / опыт) с пошаговым рендером
  • (для прикладных §) apply — применение/значение (инфографика)

Интерактивы (3–5 на §):

  1. Звёздный виджет темы (из карты содержания)
  2. Конструктор/симулятор (drag / slider / sim из реестра / biochem-core 3D)
  3. DnD-классификатор (вещество/смесь, простое/сложное, физ./хим. явление, оксид/кислота/соль/основание)
  4. Тренажёр — 5 задач с inline-наглядностью (формула / уравнение / модель / признак в условии)
  5. Босс § — 3–4 интеграционные задачи (+5 XP каждая)

Дополнительно: пополнение глоссария (термины §, [[ссылки]]), «Вопросы и задания» из учебника (адаптированные, с проверкой), проходящий jsdom-тест страницы.

Финал главы: итоговая шпаргалка (mini-cards), карта связей (SVG-граф понятий главы), 5–7 интегрированных боссов (+10 XP), achievement «Мастер главы N» (+50 XP, confetti), кнопка перехода к следующей главе.


🚀 ПОРЯДОК РЕАЛИЗАЦИИ (по фазам)

Phase 0 — Фундамент (hub + каркасы глав)

  • chemistry_7_hub.html — хаб-каталог 4 глав по образцу chemistry_8_hub.html: палитра emerald (--pri:#059669/#047857, --pri-soft:#d1fae5; header gradient linear-gradient(110deg,#065f46 0%,#059669 55%,#6ee7b7 100%)), водяной знак «ХИМИЯ», карточки глав с прогрессом (грузятся из /api/textbooks/chemistry-7/children), блок «Финал курса» (шпаргалка + боссы — наполняется в Phase 5), achievement-strip «Химик 7 класса», тема (localStorage chemistry7_theme), KaTeX CDN, /js/api.js+/js/xp.js.
  • 4 файла глав chemistry_7_ch1..ch4.html — на Phase 0 валидные каркасы-заглушки (header с водяным знаком, hero, sidebar-оглавление §, контейнер параграфов, XP/tracker-интеграция), наполнение § — в Phase 1–4. Подключить ?v=YYYYMMDD (cache-busting) на все JS; sidebar-фикс @media(min-width:981px){#sidebar-btn{display:none}}.
  • /js/chem7_svg.js (хелперы B — заглушки → реализация по фазам); подключить chem8_svg.js, biochem-core.js и нужные симуляторы на страницах глав; chem7_glossary.js.
  • Миграция 046_chemistry7_hub.sql (следующий номер после 045_bio_pathways.sql): INSERT родителя chemistry-7 (html_path='chemistry_7_hub.html', para_count=26, color='emerald', parent_slug=NULL, subject='chemistry', grade=7) + 4 детей chemistry-7-ch1..ch4 (parent_slug='chemistry-7', свои html_path/para_count/color/sort_order) — по образцу 041_chemistry8_hub.sql. Применить npm run migrate + рестарт dev-сервера.
  • jsdom-тест-каркас: хаб строится, все 5 файлов парсятся, ссылки глав ведут на существующие slug.

Phase 1 — Глава I «Первоначальные химические понятия» (§§1–12) + ЛО1 + ПР1

Самая фундаментальная: закладываем движки, от которых зависит весь курс — elementSymbolDrill, парсер формулы + калькулятор M_r (biochem-core), valenceBuilder, equationBalancer, reactionSigns, massConservation, mixtureSeparator. По 2–3 § за волну.

Phase 2 — Глава II «Кислород» (§§13–17) + ЛО2 + ПР2

airComposition, combustionSim, compoundBuilder('oxide'), схема получения O₂ (катализатор), sim chemsandbox. Первые реакции горения и понятие оксида.

Phase 3 — Глава III «Водород» (§§18–22) + ЛО3 + ЛО4 + ПР3

3D H₂, восстановление CuO, indicatorScale (лакмус/метилоранж), activitySeries (ряд активности, Прил.4), testTube (Zn+HCl, пузырьки H₂), compoundBuilder('salt'). Понятия «кислота» и «соль».

Phase 4 — Глава IV «Вода» (§§23–26) + ЛО5 + ПР4

waterDecomp (разложение 2:1), реакции воды, compoundBuilder('base'), indicatorScale (фенолфталеин), нейтрализация (sim titration), экология/круговорот воды (Прил.5).

Phase 5 — Финалы глав + общий финал учебника

Шпаргалки и карты связей по каждой главе; интегрированные боссы + achievements; большой финал: «химический паспорт вещества» (тело/вещество → состав → формула → реакции), итоговый босс-квест, ачивка «Химик 7 класса»; глоссарий собран и связан [[ссылками]]; страница приложений-справочников (Прил.3,4,6,7 как интерактивные виджеты).

Phase 6 — Качество и админка

Полный прогон jsdom-тестов (каждый § — builder не stub); аудит баланса всех уравнений и KaTeX/chemEq-эскейпов; синхронизация с админкой (если новые sim в lab.html → обновить ADMIN_SIMS в admin.htmlfeedback_sims_admin_sync); проверка доступа по классам/ученикам (project_content_access, /api/access); появление в каталоге textbooks.html в секции 7 класса (рядом с Физикой 7, Алгеброй 7, Геометрией 7).

Рекомендуемый темп: внутри фазы — по 2–3 § за «волну», каждая волна = commit + проходящий jsdom-тест (правило CLAUDE.md: commit изменённых файлов + push сразу).


🗄️ ИНТЕГРАЦИЯ С ПРОЕКТОМ

Точка Действие
БД каталог chemistry-7 в textbooks отсутствует → миграция 046_chemistry7_hub.sql: INSERT родитель + 4 ребёнка (образец — 041_chemistry8_hub.sql). Каталог /api/textbooks показывает только parent_slug IS NULL; хаб тянет детей через /api/textbooks/chemistry-7/children.
Прогресс/XP Автоматически: textbook-xp-widget.js (+5 XP/§), textbook-tracker.js, LS.xp. Доп. XP за боссов — по образцу phys7_ch1_widgets.js. localStorage-ключи прогресса — chem7-*.
Симуляторы Реестр frontend/js/labs/_register-all.js. Нужные химические sim уже зарегистрированы: periodic, chemsandbox, titration, qualanalysis.
Молекулы biochem-core.js (парсинг, M_r, 2D/3D-модели).
Хим. примитивы chem8_svg.js (window.Chem8: formula, ionLabel, chemEq + виджеты) — переиспользовать; chem7_svg.js — тонкая надстройка (валентность, горение, смеси, весы массы).
Бэкенд Роуты готовы: backend/src/routes/textbooks.js (catalog/children/progress/bookmarks). Доступ: backend/src/services/contentAccess.js.
Глоссарий chem7_glossary.js по образцу chem8_glossary.js (всплывающие определения терминов).
Тесты cd backend && npm test (jsdom). На каждый § — тест: страница строится, builder не stub, уравнения сбалансированы. Учитывать 3 pre-existing baseline-фейла (BASELINE_FAILS=3).
Админка Новые sim в lab.html → синхронно ADMIN_SIMS в admin.html.
Каталог-страница frontend/textbooks.html — карточка появляется автоматически из каталога (секция 7 класса).

⚠️ КРИТИЧЕСКИЕ ПРАВИЛА

НЕ делать

  • Контент 8 класса: моль, молярная масса/объём, расчёты по уравнениям, периодический закон, строение атома, химическая связь, ТЭД, ионные уравнения, степень окисления — в 7 классе НЕТ.
  • «Сырые» формулы текстом — только Chem8.formula/chemEq/KaTeX.
  • Несбалансированные уравнения (аудит баланса перед commit). Реакции — только из программы 7 кл.
  • Дублировать молекулярный движок или химические примитивы — переиспользовать biochem-core.js и chem8_svg.js.
  • setPointerCapture (теряется после innerHTML-replace) → window-listeners + state-flag.
  • \to, \uparrow, \downarrow без удвоения backslash в JS-шаблонах.
  • Эмодзи — запрещены; только inline SVG .ic (feedback_no_emoji).
  • Авторов учебника в hub/footer — НЕ упоминаем.
  • Grep tool — запрещён; поиск только ast-index (правила проекта, reference_sqlite_node).

Обязательно

  • Каждый commit → jsdom-тест 100 % pass (сверх baseline). Push сразу после коммита, файлы поимённо.
  • Аудит баланса уравнений + KaTeX-эскейпов после каждой волны.
  • Каждая наглядная/качественная реакция = уравнение + видимый признак (цвет/газ/осадок/индикатор/пламя).
  • Цвета осадков/индикаторов/пламени — химически достоверные.
  • Все builder-функции в конце финальной волны главы — НЕ stub'ы.
  • Простой, дружелюбный язык первого курса; на каждое понятие — наглядность.
  • Перед работой по ветке feature/lab-content-enginegit fetch (параллельные сессии, project_concurrent_sessions_branch).

📊 Оценка объёма

Глава § Лаб/ПР Ожидаемый LOC
Гл.I Первоначальные понятия 12 ЛО1 + ПР1 ~10 000 (+valenceBuilder, equationBalancer, reactionSigns, massConservation, mixtureSeparator)
Гл.II Кислород 5 ЛО2 + ПР2 ~5 000 (+combustionSim, compoundBuilder('oxide'), airComposition)
Гл.III Водород 5 ЛО3,4 + ПР3 ~6 000 (+indicatorScale, activitySeries, testTube, compoundBuilder('salt'))
Гл.IV Вода 4 ЛО5 + ПР4 ~5 000 (+waterDecomp, compoundBuilder('base'), sim titration)
Финалы глав + общий финал + приложения ~4 000
/js/chem7_svg.js хелперы ~2 500
Хаб + 4 каркаса глав (Phase 0) ~2 500
Итого 26 5 ЛО + 4 ПР ~35 000 LOC

Меньше Химии 8 (~64 000) — курс короче (26 § против 52) и качественный (без тяжёлых количественных движков). По плотности интерактива — на уровне Химии 8 / Физики 7.


🏆 Достижения и XP (оценка)

Slug Название Условие XP
chemistry7_ch1_master Первооткрыватель Все боссы финала главы I 50
chemistry7_ch2_master Повелитель кислорода Все боссы финала главы II 50
chemistry7_ch3_master Знаток водорода Все боссы финала главы III 50
chemistry7_ch4_master Хранитель воды Все боссы финала главы IV 50
chemistry7_course_master Химик 7 класса Все 4 ачивки глав + финальный босс-квест 150

XP-оценка полного прохождения: 26 § × ~50 XP + 4 ач × 50 + финал 150 ≈ 1 700 XP.


🧠 Чем Химия 7 отличается от Химии 8

Аспект Химия 7 (первый курс) Химия 8
Количество вещества (моль) Нет Есть (вводный раздел)
M_r / M M_r как «во сколько раз тяжелее» (без моля) Молярная масса M, расчёты
Состав по формуле Качественный/количественный; массовая доля элемента (Прил.3) + расчёты по уравнениям
Валентность vs степень окисления Валентность Степень окисления, ОВР
Классы соединений Знакомство по ходу курса (оксиды, кислоты, соли, основания) Системно, единой главой + генетическая связь
Периодический закон, строение атома, связь Нет Есть (главы 24)
ТЭД, ионные уравнения, растворы (w,c) Нет Есть (глава 6)
Кислоты/основания Понятие, индикаторы, реакции с Me, нейтрализация + классификация, свойства, получение
Главный визуал курса Балансировщик уравнений + ряд активности + индикаторы Количественные расчёты + ПСХЭ

Курсы дополняют друг друга: Химия 7 закладывает язык химии (вещество, формула, валентность, уравнение) и первое знакомство с веществами; Химия 8 переводит это в количественную плоскость.


📚 Связанные планы

  • PLAN_CHEMISTRY_8.md — образец архитектуры (hub + главы), химический стандарт качества, chem8_svg.js, миграция-шаблон.
  • PLAN_CHEMISTRY_9.md — химический стандарт, рекомендация о shared chem_svg.js.
  • PLAN_PHYSICS_7.md — образец полного курса 7 класса (фазы, ачивки, финал курса, политика «без авторов», cache-busting, sidebar-фикс).

🎬 Запуск

Phase 0: chemistry_7_hub.html (по образцу chemistry_8_hub.html, палитра emerald) + 4 каркаса глав (chemistry_7_ch1..ch4.html) + /js/chem7_svg.js (скелет) + подключение chem8_svg.js/biochem-core.js/симуляторов + миграция 046_chemistry7_hub.sql (родитель + 4 ребёнка)

  • npm run migrate + рестарт + jsdom-каркас. Phase 1: Глава I (§§1–12) — закладываем движки (valenceBuilder, equationBalancer, парсер формулы, M_r, reactionSigns), от которых зависят все главы.

Дальше — последовательно по главам (Phase 2 → 4), затем финалы (Phase 5) и качество (Phase 6).

После завершения Химия 7 → первый учебник, полностью покрывающий химию с нуля для самого младшего класса в линейке (7→8→9), закрывает «нижнюю» ступень химии.