закрыта задача spa-framework-choice
This commit is contained in:
@@ -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) — Расшифровка сегодня доходит одним сообщением и теряется в переписке; вернуться к ней через неделю нечем.
|
||||
|
||||
@@ -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` и
|
||||
цена шага сборки в гейте, а не популярность.
|
||||
Reference in New Issue
Block a user