Files
transcriber/tasks/items/spa-framework-choice.md
T
av d21da8575c Единый список задач вместо двух секций, порядок по выполнению
Секции «Ядро» и «Инфра» слиты в одну «Очередь»: полок домена у проекта
нет, а две секции держали два независимых порядка вместо одного.

Порядок: красный гейт, потом долги, задевающие интерфейсы, потом
хранилище, вход, разграничение, приложение. Разведка потолков SpeechKit
последней — она обслуживает направление, а не очередь.
2026-08-10 21:39:55 +03:00

2.3 KiB
Raw Blame History

🔬 Выбор фреймворка для приложения

  • Тип: research
  • Категория: Очередь
  • Зачем: Конвенция веб-UI написана под htmx, а решено делать SPA: до выбора фреймворка не заводится ни сборка, ни первый экран.
  • Теги: goal:web-access

Конвенция web-ui.md описывала htmx с прямым запретом на шаг сборки и реактивные фреймворки. Решение сменилось на SPA, и теперь эта конвенция ждёт переписывания — но написать её не под что, пока фреймворк не назван.

Разведка, а не задача: исход — знание и переписанная конвенция, а не работающий экран.

Вопрос

Какой фреймворк берём под приложение на четыре экрана, которое собирается в статику, вшивается в бинарник Go и ставится на телефон как PWA.

Куда ляжет ответ

docs/research/spa-framework.md — сравнение с числами: размер собранной статики, время холодной сборки, число зависимостей. Выбор и причина отказа от остальных — в docs/adr/, потому что переделка на другой фреймворк стоит дороже переписывания одного файла. Следом переписывается docs/conventions/web-ui.md, и до тех пор она стоит честной строкой «фреймворк не выбран».

Рамки

Сравнение идёт на одном и том же пробном экране: список записей с опросом состояния. Кандидаты названы человеком; сегодня в разговоре звучали Svelte, Vue и React, все с Vite. Мера — размер статики, простота вшивания в go:embed и цена шага сборки в гейте, а не популярность.