Petite-Vue основана на идеях Vue, но ориентирована на минималистичный сценарий использования. Такое стремление к компактности приводит к заметным ограничениям, которые оказывают влияние на архитектуру фронтенда и способы организации логики.
Размер библиотеки держится в пределах нескольких килобайт, поэтому отсутствует значительная часть высокоуровневого функционала: нет маршрутизации, нет полноценной системы компонентов, нет plug-in API. В итоге логика распределяется вокруг простых реактивных объектов и атрибутов на уровне DOM.
Ключевой эффект: приложение принимает форму «поверх HTML», а не абстракции поверх виртуального дерева компонентов.
В отличие от Vue 3, где виртуальный DOM обеспечивает прослойку между логикой и разметкой, Petite-Vue обновляет DOM напрямую. Такой подход увеличивает прозрачность, но ограничивает оптимизации, связанные с диффингом и батчингом обновлений.
Выигрыш: снижение накладных расходов и отсутствие сложных механизмов рендеринга. Компромисс: труднее масштабировать реактивные взаимодействия, особенно при большом количестве элементов и частых обновлениях.
В Petite-Vue присутствует лишь идея мини-компонентов через
v-scope, но без богатой системы свойств, событий и
жизненных циклов. Это не приближается к полноценной компонентной модели
в духе Vue или React.
Последствия: структурирование логики сводится к сегментам кода, привязанным к DOM-узлам, а повторное использование вынуждает дублировать шаблоны или выносить всё в серверный рендеринг.
Реактивность Petite-Vue проста: объекты оборачиваются в прокси,
вычисления происходят лениво, зависимости вычисляются автоматически. Но
отсутствуют такие конструкции, как computed,
watch с детальной конфигурацией, или тонкая настройка
трекинга.
Плюс: низкая когнитивная нагрузка и отсутствие сложных соглашений. Минус: сложнее выражать производные состояния и контролировать сторонние эффекты.
Petite-Vue часто применяется как «усилитель» существующей HTML-страницы. Она закрывает потребность в интерактивности без перестройки всего приложения.
Ограничение: невозможность построения SPA-логики без дополнительных библиотек. Навигация, состояние между страницами и сложные иерархии требуют внешних инструментов.
Стратегия Petite-Vue направлена на сценарии, где важны скорость
внедрения и минимальные зависимости. Но при росте требований к
интерактивности приходится решать, продолжать ли расширять код вокруг
v-scope, либо перейти на полноценный фреймворк.
Компромисс: сила Petite-Vue — в малых интерфейсах, прототипах, микровиджетах, интеграции со статическими сайтами и серверными движками. Слабое место — проекты, которые со временем требуют богатой компонентной модели и согласованного управления состоянием.
Весь стек Petite-Vue работает без сборщиков, транспайлеров и виртуальной машины. Это делает его совместимым с простыми средами, включая CMS и статические шаблоны.
Компромисс: отсутствие поддержки современных схем оптимизации, SSR, код-сплиттинга и типизации. Для крупных проектов преимущества сборки оказываются критичнее, чем компактность.
Экосистема Petite-Vue не сопоставима с Vue или React: отсутствуют зрелые наборы компонентов, пакеты для сложных UI-паттернов, отладочные инструменты и шаблоны архитектуры.
Последствие: повышается роль самодельных решений, что может замедлять развитие и усложнять поддержку.
Petite-Vue выбирает минимализм как основной принцип. Этот подход предпочтителен там, где важны низкий порог внедрения, читаемость кода и зависимость от исходного HTML. Цена такого выбора — отказ от масштабных абстракций и перераспределение ответственности на разработчика и окружение.