<b>Astro часто ломают не кодом, а ожиданиями от рендера и сборки</b>
Если делать сайт как «просто React, но без React», легко получить лишний JS, странные 404 и медленную навигацию. Astro сильнее там, где контент и оболочка разделены: страницы собираются на сервере, а интерактивность втыкается точечно.
Перед стартом проверь три вещи:
— что реально должно быть интерактивным на клиенте;
— где данные приходят на этапе сборки, а где — только на запросе;
— не тащишь ли ты компонентную библиотеку туда, где хватит обычной разметки.
Самая частая ошибка — гидрировать весь экран ради одного меню. В Astro лучше держать интерактивные островки маленькими: форма, фильтр, карусель, личный кабинет. Всё остальное пусть остаётся статичным HTML. Это упрощает отладку, ускоряет первую отрисовку и снижает риск конфликтов между фреймворками.
Ещё один полезный фильтр — смотреть на маршрут как на документ, а не как на SPA-страницу. Если контент почти не меняется, используйте статическую генерацию. Если нужен персональный ответ или частая смена данных, выносите это в серверный слой и не смешивайте с UI без необходимости.
<b>Хороший Astro-проект начинается с вопроса «что здесь вообще должно жить в браузере?» — и это экономит больше времени, чем любая оптимизация потом.</b>
MarTech Stack Desk
@martech_stack_desk
<b>Astro часто ломают не кодом, а ожиданиями от рендера и сборки</b>
Этот пост опубликован в Telegram-канале MarTech Stack Desk. Подписаться можно по ссылке: @martech_stack_desk.