diff --git a/tasks/BACKLOG.md b/tasks/BACKLOG.md index 83c6cd6..38a6454 100644 --- a/tasks/BACKLOG.md +++ b/tasks/BACKLOG.md @@ -29,7 +29,6 @@ - [✨ Сопоставить пользователя Telegram с учётной записью](items/telegram-account-link.md) — Белый список сверяется с именем пользователя Telegram, которое владелец меняет в любой момент, а записи из бота ни с кем не связаны. - [✨ Свести приём и чтение записей к одному контракту для приложения](items/json-api-for-spa.md) — Сегодняшний API отвечает 404 на любую ошибку чтения и 500 на любую ошибку приёма: строить на нём экраны нечем. - [✨ Пускать скрипты в API по личным токенам](items/api-tokens.md) — Вход через OIDC закрывает API целиком, а скрипту браузерная сессия недоступна: автоматизировать загрузку станет нечем. -- [🔬 Выбор фреймворка для приложения](items/spa-framework-choice.md) — Конвенция веб-UI написана под htmx, а решено делать SPA: до выбора фреймворка не заводится ни сборка, ни первый экран. - [✨ Собрать каркас приложения и раздать его из бинарника](items/spa-skeleton.md) — Экранов нет и собирать их нечем: ни сборки фронтенда, ни раздачи статики в проекте не существует. - [✨ Сделать экран загрузки записи и её состояния](items/upload-and-status-screen.md) — Первое, ради чего приложение открывают: отдать файл и увидеть, что с ним происходит. - [✨ Сделать экран списка своих записей и чтения текста](items/records-list-screen.md) — Расшифровка сегодня доходит одним сообщением и теряется в переписке; вернуться к ней через неделю нечем. diff --git a/tasks/items/spa-framework-choice.md b/tasks/items/spa-framework-choice.md deleted file mode 100644 index 1ea5292..0000000 --- a/tasks/items/spa-framework-choice.md +++ /dev/null @@ -1,34 +0,0 @@ -# 🔬 Выбор фреймворка для приложения - -- **Тип:** research -- **Категория:** Очередь -- **Зачем:** Конвенция веб-UI написана под htmx, а решено делать SPA: до выбора фреймворка не заводится ни сборка, ни первый экран. -- **Теги:** goal:web-access - -Конвенция [web-ui.md](../../docs/conventions/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` и -цена шага сборки в гейте, а не популярность.