2352e99093
По данным PDF-брендбука клиники: BRANDBOOK_SCOPE.md: - Типографика: добавлен DINPro как фирменный шрифт бренда (DINPro = оффлайн/печать, Fira Sans = веб) - Логотип: иерархия версий («Общий» и «Основной»), правила, размеры на форме - Новый раздел 6: Оффлайн элементы (форма, бейджи 70×30мм, навигация Oracal, трамваи, печать) TZ.md: - ФТ-01: добавлен раздел «Оффлайн элементы» в навигацию - ФТ-15–17: требования к странице «Логотип» (PNG в Sprint 1, вектор позже) - ФТ-20–22: уточнена типографика — оба шрифта с правилами применения - ФТ-43–49: полные требования к разделу «Оффлайн элементы» - Стек: DINPro добавлен в таблицу технологий - ОВ-05: закрыт (логотип в Sprint 1), добавлен ОВ-06 (HEX-коды Oracal) SPRINTS.md: - Sprint 1: добавлены 9 задач по странице «Логотип» (PNG, иерархия, охранная зона, правила) - Sprint 2: добавлены задачи по DINPro + 5 страниц раздела «Оффлайн элементы» - Сводная таблица обновлена Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
273 lines
16 KiB
Markdown
273 lines
16 KiB
Markdown
# План спринтов — Брендбук О!Клиника
|
||
|
||
> Недельные спринты. Каждый спринт = 1 рабочая неделя.
|
||
> Базовая дата начала: уточняется при старте разработки.
|
||
|
||
---
|
||
|
||
## Обозначения
|
||
|
||
- **FE** — задача фронтенда (Next.js)
|
||
- **BE** — задача бэкенда (NestJS + Prisma)
|
||
- **DB** — изменения схемы базы данных
|
||
- **Design** — дизайн-решения, требующие согласования
|
||
|
||
---
|
||
|
||
## Sprint 1 — Инициализация проекта + страница «Логотип»
|
||
|
||
**Цель:** Рабочее окружение, monorepo, базовая архитектура, первая живая страница брендбука — «Логотип».
|
||
|
||
### Задачи — инфраструктура
|
||
- [ ] FE: Инициализация Next.js (App Router) в `apps/web`
|
||
- [ ] BE: Инициализация NestJS в `apps/api`
|
||
- [ ] DB: Подключение PostgreSQL + Prisma, базовая схема
|
||
- [ ] Настройка Docker Compose для локальной разработки
|
||
- [ ] Настройка monorepo (pnpm workspaces)
|
||
- [ ] Создание `.env.example`
|
||
- [ ] Git: создание веток `develop` и `sprint/1`
|
||
- [ ] FE: Базовая структура брендбука (layout, боковая навигация по разделам)
|
||
- [ ] FE: Подключение шрифта Fira Sans (веб) + подготовка к DINPro (бренд)
|
||
|
||
### Задачи — страница «Логотип» (первый контент брендбука)
|
||
- [ ] Design: Экспорт PNG логотипа из PDF для использования как placeholder
|
||
- [ ] FE: Страница `/foundation/logo` в брендбуке
|
||
- [ ] FE: Отображение обеих версий логотипа: «Общий» и «Основной»
|
||
- [ ] FE: Секция «Иерархия»: описание применения каждой версии
|
||
- [ ] FE: Секция «Цветовые варианты»: основной / инвертированный / на форме
|
||
- [ ] FE: Секция «Охранная зона» с визуализацией отступов
|
||
- [ ] FE: Секция «Минимальные размеры» (таблица: до 46 р. и от 48 р.)
|
||
- [ ] FE: Секция «Недопустимые варианты» — правило не менять и не сочетать с текстом
|
||
- [ ] FE: Placeholder-блок «Скачать вектор» (кнопка неактивна до получения SVG)
|
||
|
||
**Результат спринта:** Запускается `pnpm dev`, открывается брендбук с навигацией. Раздел «Логотип» полностью заполнен контентом и правилами.
|
||
|
||
---
|
||
|
||
## Sprint 2 — Цвета, типографика и оффлайн элементы (Brand Foundation)
|
||
|
||
**Цель:** Секция «Фундамент бренда» — цвета, оба шрифта, а также первый оффлайн-раздел.
|
||
|
||
### Задачи — цвета
|
||
- [ ] Design: Зафиксировать HEX-эквиваленты всех цветов бренда (053M, 073M, 066M, 050M, 081M, 080M)
|
||
- [ ] FE: Создать CSS-переменные / дизайн-токены для всей цветовой палитры
|
||
- [ ] FE: Страница «Цвета» — палитра с кодами Oracal/Pantone, HEX, RGB, HSL, копирование в клик
|
||
- [ ] FE: Проверка контрастности пар цветов (WCAG AA/AAA)
|
||
- [ ] FE: Экспорт токенов в JSON (Figma-compatible)
|
||
|
||
### Задачи — типографика
|
||
- [ ] FE: Страница «Типографика» — раздел DINPro (бренд/оффлайн) + раздел Fira Sans (веб)
|
||
- [ ] FE: Шкала размеров для обоих шрифтов: h1–h6, body, caption, label, overline
|
||
- [ ] FE: Чёткое указание: где DINPro, где Fira Sans
|
||
- [ ] FE: Живые примеры текста обоими шрифтами
|
||
|
||
### Задачи — оффлайн элементы (справочный раздел)
|
||
- [ ] FE: Раздел «Оффлайн элементы» в навигации брендбука
|
||
- [ ] FE: Страница «Форма сотрудников» — фото, правила размещения логотипа, таблица размеров
|
||
- [ ] FE: Страница «Бейджи» — размеры 70×30 мм, варианты, состав текста
|
||
- [ ] FE: Страница «Внутренняя навигация» — шаблоны табличек, материалы, цвета Oracal
|
||
- [ ] FE: Страница «Брендирование транспорта» — макет трамвая, цветовая схема
|
||
- [ ] FE: Страница «Печатные материалы» — листовки, визитки, Telegram-бот
|
||
|
||
**Результат спринта:** Разделы «Цвета», «Типографика» и «Оффлайн элементы» полностью готовы.
|
||
|
||
---
|
||
|
||
## Sprint 3 — Базовые компоненты: кнопки и поля ввода
|
||
|
||
**Цель:** Все варианты кнопок и форм-контролов в брендбуке.
|
||
|
||
### Задачи
|
||
- [ ] FE: Компонент Button (все варианты: primary/secondary/ghost/danger, размеры, состояния)
|
||
- [ ] FE: Компонент Input (text, password, focus/error/disabled)
|
||
- [ ] FE: Компонент Textarea
|
||
- [ ] FE: Компонент Select
|
||
- [ ] FE: Компонент Checkbox и Radio
|
||
- [ ] FE: Компонент Toggle/Switch
|
||
- [ ] FE: Страница брендбука «Компоненты → Кнопки» с документацией
|
||
- [ ] FE: Страница брендбука «Компоненты → Форм-контролы»
|
||
- [ ] FE: Копирование HTML/CSS кода компонента в один клик
|
||
|
||
**Результат спринта:** Раздел «Базовые компоненты — кнопки и ввод» готов.
|
||
|
||
---
|
||
|
||
## Sprint 4 — Карточки (Cards)
|
||
|
||
**Цель:** Все типы карточек, используемых на сайте.
|
||
|
||
### Задачи
|
||
- [ ] FE: Карточка врача (DoctorCard) — фото, имя, специализация, кнопка записи
|
||
- [ ] FE: Карточка услуги / заболевания
|
||
- [ ] FE: Карточка новости — превью, дата, заголовок, анонс, читать далее
|
||
- [ ] FE: Карточка отзыва — автор, текст, рейтинг (звёзды), дата
|
||
- [ ] FE: Карточка цены — услуга, стоимость, описание
|
||
- [ ] FE: Бейджи, теги, алерты (inline и toast)
|
||
- [ ] FE: Страница «Компоненты → Карточки» с документацией
|
||
|
||
**Результат спринта:** Все карточки задокументированы и показаны в брендбуке.
|
||
|
||
---
|
||
|
||
## Sprint 5 — Hero-блок и CEO-текст
|
||
|
||
**Цель:** Ключевые верхние блоки страниц.
|
||
|
||
### Задачи
|
||
- [ ] FE: Hero-блок вариант 1 — фон + заголовок + CTA
|
||
- [ ] FE: Hero-блок вариант 2 — иллюстрация сбоку
|
||
- [ ] FE: Hero-блок вариант 3 — с встроенной формой записи
|
||
- [ ] FE: Блок CEO-текст — фото руководителя, цитата, подпись
|
||
- [ ] FE: Блок «Преимущества клиники» — иконки + текст
|
||
- [ ] FE: Страница «Блоки → Hero и вступление»
|
||
- [ ] Design: Согласование вариантов Hero под разные страницы
|
||
|
||
**Результат спринта:** Hero и CEO-секция полностью задокументированы.
|
||
|
||
---
|
||
|
||
## Sprint 6 — Врачи и профиль врача
|
||
|
||
**Цель:** Блоки и компоненты, связанные с врачами.
|
||
|
||
### Задачи
|
||
- [ ] FE: Блок «Наши врачи» — сетка карточек с фильтром по специализации
|
||
- [ ] FE: Блок «Врач — профиль» (полная страница): фото, биография, специализации, расписание
|
||
- [ ] FE: Компонент «Расписание / слоты записи»
|
||
- [ ] FE: Компонент навигации (header menu, breadcrumbs)
|
||
- [ ] FE: Пагинация
|
||
- [ ] FE: Страница «Блоки → Врачи»
|
||
|
||
**Результат спринта:** Все блоки о врачах готовы.
|
||
|
||
---
|
||
|
||
## Sprint 7 — Отзывы и новости
|
||
|
||
**Цель:** Контентные блоки сайта.
|
||
|
||
### Задачи
|
||
- [ ] FE: Блок отзывов — карусель
|
||
- [ ] FE: Блок отзывов — статичная сетка
|
||
- [ ] FE: Блок рейтинга (звёзды + количество отзывов)
|
||
- [ ] FE: Блок новостей — сетка превью (3 в ряд)
|
||
- [ ] FE: Блок новостей — горизонтальный список
|
||
- [ ] FE: Блок «Последние новости» для сайдбара
|
||
- [ ] FE: Блок услуг / заболеваний — иконки + список
|
||
- [ ] FE: Страница «Блоки → Отзывы и новости»
|
||
|
||
**Результат спринта:** Контентные блоки задокументированы.
|
||
|
||
---
|
||
|
||
## Sprint 8 — Формы контакта и модальные окна
|
||
|
||
**Цель:** Все формы и диалоги взаимодействия с пациентом.
|
||
|
||
### Задачи
|
||
- [ ] FE: Форма записи — короткая (имя, телефон)
|
||
- [ ] FE: Форма записи — расширенная (имя, телефон, специализация, врач, дата)
|
||
- [ ] FE: Форма записи в модальном окне
|
||
- [ ] FE: Контактная форма (имя, email, сообщение)
|
||
- [ ] FE: Блок «Контакт» — карта + адрес + часы работы
|
||
- [ ] FE: Модальное окно — информационное
|
||
- [ ] FE: Модальное окно — подтверждение
|
||
- [ ] FE: Страница «Блоки → Формы и контакты»
|
||
|
||
**Результат спринта:** Все формы и диалоги готовы.
|
||
|
||
---
|
||
|
||
## Sprint 9 — Страницы: Главная и Заболевание
|
||
|
||
**Цель:** Первые две полноразмерные страницы в брендбуке.
|
||
|
||
### Задачи
|
||
- [ ] FE: Страница «Главная» — сборка из утверждённых блоков
|
||
- [ ] FE: Страница «Заболевание» — Hero (мини), описание, врачи по теме, форма
|
||
- [ ] FE: Раздел «Страницы» в навигации брендбука
|
||
- [ ] FE: Адаптивность страниц (desktop / tablet / mobile)
|
||
- [ ] Design: Ревью и согласование страниц
|
||
|
||
**Результат спринта:** 2 страницы задокументированы в брендбуке.
|
||
|
||
---
|
||
|
||
## Sprint 10 — Страницы: Врачи, Врач, Цены
|
||
|
||
**Цель:** Три страницы с ключевым контентом.
|
||
|
||
### Задачи
|
||
- [ ] FE: Страница «Все врачи» — фильтры, сетка, пагинация
|
||
- [ ] FE: Страница «Врач (профиль)»
|
||
- [ ] FE: Страница «Цены» — фильтры, таблица, форма
|
||
- [ ] FE: Таблица цен с сортировкой
|
||
- [ ] FE: Адаптивность всех трёх страниц
|
||
- [ ] Design: Ревью страниц
|
||
|
||
**Результат спринта:** Ещё 3 страницы в брендбуке.
|
||
|
||
---
|
||
|
||
## Sprint 11 — Страница Контакты и Экспериментальная секция (MVP)
|
||
|
||
**Цель:** Последняя страница + запуск механизма экспериментов.
|
||
|
||
### Задачи
|
||
- [ ] FE: Страница «Контакты»
|
||
- [ ] BE + DB: Модели `Component`, `Page`, `Block` в Prisma
|
||
- [ ] BE: CRUD API для компонентов (`/api/components`)
|
||
- [ ] BE: CRUD API для страниц (`/api/pages`)
|
||
- [ ] FE: Секция «Эксперименты» в брендбуке
|
||
- [ ] FE: Форма создания нового экспериментального компонента
|
||
- [ ] FE: Список экспериментальных компонентов со статусами
|
||
|
||
**Результат спринта:** Все страницы готовы, эксперименты — базовый функционал.
|
||
|
||
---
|
||
|
||
## Sprint 12 — Деплой, полировка, документация
|
||
|
||
**Цель:** Финальный релиз и публикация.
|
||
|
||
### Задачи
|
||
- [ ] BE + FE: Полный smoke-тест всего брендбука
|
||
- [ ] FE: Мобильная адаптация — финальная проверка всех страниц
|
||
- [ ] FE: Accessibility-аудит (WCAG AA)
|
||
- [ ] Деплой: настройка CI/CD, публикация на сервере
|
||
- [ ] Docs: Создание `docs/deployment.md`
|
||
- [ ] Docs: Обновление README.md финальными инструкциями
|
||
- [ ] Design: Финальный ревью брендбука
|
||
|
||
**Результат спринта:** Брендбук задеплоен и доступен по URL.
|
||
|
||
---
|
||
|
||
## Сводная таблица
|
||
|
||
| Спринт | Тема | Ключевой результат |
|
||
|--------|---------------------------------------|-----------------------------------------|
|
||
| 1 | Инициализация + Логотип | Брендбук запускается, страница Логотипа готова |
|
||
| 2 | Цвета, Типографика, Оффлайн элементы | Фундамент + оффлайн раздел готовы |
|
||
| 3 | Кнопки и форм-контролы | Базовые компоненты готовы |
|
||
| 4 | Карточки | Все карточки задокументированы |
|
||
| 5 | Hero и CEO-текст | Ключевые блоки страниц готовы |
|
||
| 6 | Врачи | Блоки о врачах готовы |
|
||
| 7 | Отзывы и новости | Контентные блоки готовы |
|
||
| 8 | Формы и модальные окна | Все формы задокументированы |
|
||
| 9 | Страницы: Главная, Заболевание | 2 страницы в брендбуке |
|
||
| 10 | Страницы: Врачи, Цены | 3 страницы в брендбуке |
|
||
| 11 | Контакты + Эксперименты MVP | Все страницы + система экспериментов |
|
||
| 12 | Деплой и полировка | Брендбук живёт в продакшне |
|
||
|
||
---
|
||
|
||
## Backlog (вне основных спринтов)
|
||
|
||
- Тёмная тема
|
||
- Экспорт компонентов в Figma
|
||
- Drag-and-drop конструктор страниц
|
||
- История версий экспериментальных компонентов
|
||
- Мультиязычность (если потребуется)
|
||
- Раздел «Логотип»: активация кнопки скачивания SVG (после получения вектора)
|