mirror of
https://gitverse.ru/kpa39l/vesti.git
synced 2026-09-29 09:55:03 +00:00
2.9 KiB
2.9 KiB
Why
Веб-интерфейс VESTI (web/) зависит от двух внешних CDN:
https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css(base.html:7, login.html:7)https://unpkg.com/htmx.org@1.9.12(base.html:8)
При фильтрации/действиях страница ждёт ответа от unpkg.com — если CDN недоступен или
замедлен (а в РФ это распространённая проблема), браузер висит в ожидании скрипта.
Это внешняя зависимость, которая не нужна локальному сервису: VESTI работает на bigbox
за Caddy/TLS и не должна зависеть от сторонних доменов. Пользователь явно против ожидания
ответа от unpkg.com.
What Changes
- Убрать
https://unpkg.com/htmx.org@1.9.12изweb/templates/base.html. - Убрать
https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.cssизweb/templates/base.htmlиweb/templates/login.html. - Отказаться от HTMX: кнопки «Опубликовать»/«Отклонить» перевести с
hx-postна обычные<form method="post">(полная перезагрузка страницы — приемлемо для прототипа, снимает зависимость от JS). - Bootstrap: скачать CSS локально в
web/static/(или, если критично, минимизировать использование классов и обойтись собственным минимальным CSS). Рекомендуемый вариант — локальный файлweb/static/bootstrap.min.cssиз той же версии 5.3.3. - Все ссылки на внешние CDN удалить; в шаблонах не останется ни одного
http(s)://на сторонние домены. - JS в страницах — только свой (если нужен), без
unpkg/jsdelivr/cdn.*.
Impact
- Файлы:
web/templates/base.html,web/templates/login.html,web/templates/candidates.html(замена hx-post на form), возможноweb/templates/published.html/metrics.html(если там есть hx-атрибуты). - Добавится
web/static/bootstrap.min.css(~230 KB). - Поведение: approve/reject больше не будут ajax-без-перезагрузки, а будут обычными POST с редиректом. Для прототипа это нормально.
- Снимается зависимость от интернета/CDN при работе веб-UI.
- Rollback: вернуть две строки CDN в base.html + вернуть hx-post — ничего больше не меняется.