# Diet & Healthy Weight Reference App — План разработки ## Описание проекта Статическое веб-приложение — справочник методик похудения и поддержания здорового веса. Полностью serverless, деплой на любой статик-хостинг (Vercel, Netlify, GitHub Pages). ## Стек технологий - **Runtime**: Vite 6 + React 19 + TypeScript 5 - **Стили**: Tailwind CSS 4 + clsx - **Роутинг**: React Router 7 (client-side) - **Данные**: Статические JSON/TS модули (без API) - **Хранение**: localStorage для закладок / настроек - **Сборка**: Vite → статический бандл ## Архитектура ``` src/ components/ — переиспользуемые UI-компоненты pages/ — страницы приложения data/ — контент: методики, категории hooks/ — кастомные React-хуки utils/ — утилиты (расчёт BMI и др.) types/ — TypeScript типы assets/ — изображения, иконки ``` ## Фичи (в порядке приоритета) ### Phase 1 — Фундамент - [x] Инициализация проекта (Vite + React + TS + Tailwind) - [x] Базовая структура приложения и роутинг - [x] Layout: header, footer, навигация - [x] Главная страница с обзором ### Phase 2 — Контент - [x] Модель данных для методик - [x] Данные: 16 методик по 5 категориям - [x] Страница списка методик с фильтрами - [x] Страница детальной информации о методике ### Phase 3 — Интерактивность - [x] Поиск по методикам (instant search) - [x] Фильтрация по категориям, сложности, эффективности - [x] BMI-калькулятор - [x] Закладки (favorites) через localStorage - [x] Сравнение методик (до 3 шт) ### Phase 4 — Полировка - [x] Тёмная / светлая тема (light/dark/system) - [x] Адаптивный дизайн (mobile-first) + мобильное меню - [x] ScrollToTop при навигации - [ ] SEO мета-теги - [x] Деплой на dshkabatur.ru (Docker + Nginx + SSL) ## Прогресс | Дата | Что сделано | Коммит | |------|-------------|--------| | 2026-02-11 | Создан план, cursor rules, инициализация проекта | 673760f | | 2026-02-11 | Каталог методик, детальные страницы, BMI калькулятор | b8dd591 | | 2026-02-11 | Тёмная тема, мобильное меню, сравнение, ScrollToTop | 15133ec | | 2026-02-11 | Docker-деплой на diet.dshkabatur.ru с SSL | — | ## Принципы разработки 1. **Коммит на каждую фичу** — атомарные, понятные коммиты 2. **100% агентная разработка** — cursor rules покрывают все паттерны 3. **TypeScript strict mode** — никаких `any` 4. **Переиспользуемые компоненты** — DRY 5. **Доступность (a11y)** — семантический HTML, ARIA 6. **Производительность** — lazy loading, минимум бандла