copd-school/PRD.md

117 lines
12 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.

# PRD — Школа здоровья для пациентов с ХОБЛ (Денсаулық мектебі)
**Версия:** 1.0 · **Статус:** опубликован · **Проект:** `Amanbayeva_Nazym/copd-school`
**URL:** https://pages.git.vibe42.kz/Amanbayeva_Nazym/copd-school/
**Языки:** Русский (РУ) + Қазақша (ҚЗ) — переключатель в шапке
---
## 1. Описание продукта
Двуязычный учебный веб-курс для школ здоровья в первичной медико-санитарной помощи (ПМСП). Предназначен для обучения пациентов с хронической обструктивной болезнью лёгких (ХОБЛ) всем аспектам самоменеджмента. Курс состоит из 7 занятий с теорией, чек-листами, самопроверкой и домашними заданиями, а также из 6 печатных памяток/флаеров для раздачи пациентам.
## 2. Проблема и цель
- **Проблема:** пациенты с ХОБЛ часто не владеют навыками самопомощи (ингаляция, дыхательная гимнастика, план действий при обострении), что ведёт к позднему обращению и росту госпитализаций.
- **Цель:** обучить пациента контролировать болезнь, правильно принимать терапию, распознавать обострение и действовать по плану — снизить число обострений и госпитализаций, повысить качество жизни.
## 3. Пользователи
| Роль | Сценарий |
|------|----------|
| **Пациент с ХОБЛ** | Проходит занятия, отмечает прогресс, скачивает/печатает памятки, выполняет домашние задания. |
| **Медицинский работник ПМСП** | Ведёт занятия школы здоровья, раздаёт памятки, использует курс как учебный материал. |
## 4. Границы продукта (стек и ограничения)
- **Тип:** статическое клиентское веб-приложение (HTML + CSS + vanilla JS).
- **Данные:** `localStorage` браузера (только прогресс прохождения).
- **Без бэкенда, БД, аутентификации.**
- **Двуязычность:** весь контент хранится как данные в одном файле; рендер по выбранному языку.
- **Адаптив:** десктоп и мобильные.
- **Печать:** памятки открываются в отдельном окне с print-CSS для печати или сохранения в PDF.
## 5. Функциональные требования
- **FR-1. Переключатель языков РУ/ҚЗ** в шапке; выбор сохраняется в браузере; переключение мгновенно переводит весь интерфейс и контент.
- **FR-2. Курс из 7 занятий** (см. раздел 6): каждое занятие содержит цель, содержание, чек-лист, самопроверку (ответы скрыты в `<details>`) и домашнее задание.
- **FR-3. Трекер прогресса:** чекбокс «Пройдено» у каждого занятия, прогресс-бар в шапке, сохранение в `localStorage`. При 7/7 открывается сертификат.
- **FR-4. Навигация по занятиям** — быстрые ссылки на все 7 занятий.
- **FR-5. Памятки/флаеры для раздачи** (см. раздел 7): 6 одностраничных памяток с кнопкой «Печать / PDF».
- **FR-6. Инфографика пошаговых действий** в памятках: числовые шаги с иконками, блок-схема «светофор», таймлайн дня.
- **FR-7. Адаптивная вёрстка** для десктопа и мобильных.
## 6. Структура курса — 7 занятий
| № | Занятие (РУ) | Сабақ (ҚЗ) | Ключевые темы |
|---|--------------|------------|---------------|
| 1 | Знакомство с ХОБЛ: что происходит с лёгкими | ХОБЛ-мен танысу | природа болезни, причины (курение), симптомы, стадии GOLD, отличие от астмы |
| 2 | Самоконтроль: измерения, шкалы, дневник | Өзіндік бақылау | пульсоксиметрия, спирометрия, CAT, mMRC, дневник, зоны «светофор» |
| 3 | Лекарства и правильная ингаляция | Дәрілер және ингаляция | классы препаратов, базис vs спасательная, техника ДАИ, спейсер, adherence |
| 4 | Дыхательная гимнастика и физическая активность | Тыныс алу гимнастикасы | диафрагмальное дыхание, дыхание через сжатые губы, положения, «разговорный тест», реабилитация |
| 5 | Питание, отказ от курения, вакцинация, триггеры | Тамақтану, темекіні тастау | питание, НРТ/варениклин, вакцинация (грипп, пневмококк, COVID), триггеры |
| 6 | Обострения: ранние признаки, план действий, красные флаги | Асқынулар | ранние признаки, план «светофор», спасательная терапия, ГКС/антибиотики, красные флаги, скорая |
| 7 | Жизнь с ХОБЛ: психология, близкие, путешествия, права | ХОБЛ-мен өмір | тревога/депрессия, сон, сексуальная жизнь, путешествия, сопутствующие болезни, права пациента |
Каждое занятие: **цель → содержание → чек-лист → самопроверка → домашнее задание**.
## 7. Памятки/флаеры для раздачи пациентам (6)
| Памятка | Содержание | Инфографика |
|---------|-----------|-------------|
| 🚦 План действий «светофор» | зоны риска, действия, красные флаги, контакты | блок-схема решения |
| 💊 Техника ингаляции | ДАИ пошагово, частые ошибки, спейсер | 8-шаговая инфографика |
| 🌬 Дыхательная гимнастика | диафрагмальное/через сжатые губы, положения, комплекс | пошаговая инфографика |
| 📔 Дневник пациента | шаблон-таблица на неделю (SpO₂, АД, ЧСС, ЧДД, одышка, мокрота, препараты) | таблица |
| 🥗 Питание и отказ от курения | принципы питания, план отказа, вакцинация | 5-шаговая инфографика |
| 🎓 Итоговая памятка выпускника | ключевые навыки, «светофор», когда скорая | таймлайн дня |
Все памятки доступны на обоих языках и форматируются для печати (print-CSS, отдельное окно).
## 8. Локализация (РУ/ҚЗ)
- Весь контент (UI-строки, 7 занятий, 6 памяток, инфографика) продублирован на русском и казахском.
- Архитектура data-driven: объект `PACKS = {ru: RU, kz: KZ}`; функция `render()` перестраивает DOM по выбранному языку.
- Прогресс прохождения общий для обоих языков (не зависит от языка).
## 9. Архитектура и модель данных
- **Рендер:** единая функция `render()` строит страницу из языкового пакета `P()`.
- **Структура языкового пакета:** `ui` (строки интерфейса), `lessons[]` (7 занятий), `handouts{}` (6 памяток с функциями-билдерами HTML), `handoutCards[]` (карточки-превью).
- **Хелперы инфографики (общие):** `stepsHtml(steps)` — числовые шаги; `flowHtml(a,b)` — блок-схема; `timelineHtml(rows)` — таймлайн; `diaryRows(days)` — строки таблицы дневника.
- **Хранилище (localStorage, ключ `copd_school_bi_v1`):**
```
state = { lang: "ru"|"kz", done: { "l1-d": true, ... } }
```
`done` хранит отметки «Пройдено» по занятиям.
## 10. Нефункциональные требования
- NFR-1. Только статика (HTML/CSS/JS), без сборщиков и фреймворков.
- NFR-2. Работает офлайн после первой загрузки (прогресс в localStorage).
- NFR-3. Адаптивный интерфейс (мобильные/десктоп).
- NFR-4. Печать памяток через `window.open` + print-CSS (корректно в Chrome/Edge/Firefox).
- NFR-5. Медицинский контент основан на рекомендациях GOLD; носит ознакомительный характер, не заменяет консультацию врача.
## 11. За пределами версии (Out of scope)
- Учётные записи пациентов, серверная часть, синхронизация прогресса между устройствами.
- Сертификаты с подписью/верификацией.
- Интеграция с ЭМК / записью на занятия.
- Аудио/видео-материалы, интерактивные симуляции ингаляции.
- Тестирование с автоматической проверкой и балльной оценкой.
## 12. Roadmap (следующие итерации)
1. Аудио-сопровождение занятий и видео-демонстрация техники ингаляции.
2. Интерактивный тренажёр ингаляции с обратной связью.
3. Версия для слабовидящих (увеличенный шрифт, высокий контраст, screen-reader).
4. Экспорт свидетельства о прохождении школы (PDF с ФИО пациента).
5. Интеграция с расписанием занятий ПМСП и записью пациента.
6. Дополнительные темы: кислородотерапия, паллиативная помощь, группы поддержки.
7. Третий язык (английский) при необходимости.
## 13. Технологии
HTML5 · CSS3 (собственная дизайн-система, палитра: ink `#0F1218`, cyan `#00E5FF`, зелёная/жёлтая/красная зоны) · vanilla JavaScript (ES5) · localStorage · печать через `window.open` + print-CSS · публикация через ветку `pages` (Caddy).