Рады сообщить, что Vercel становится новым официальным хостинг-партнёром Astro!
Astro — JavaScript веб-фреймворк для контентных сайтов. Frontend-архитектура нового поколения Astro автоматически сокращает неиспользуемый JavaScript на странице и максимизирует Core Web Vitals и другие метрики производительности.
Тысячи разработчиков Astro уже используют frontend cloud Vercel и щедрый бесплатный тариф для хостинга. Новое партнёрство гарантирует больше совместной работы, больше функций и ещё лучший опыт для разработчиков Astro на Vercel.
Vercel также будет спонсировать $5 000 каждый месяц на постоянное open-source сопровождение и развитие Astro. Новое спонсорское финансирование будет напрямую инвестировано в наше open-source сообщество и сопровождение — на благо всех.
Вот что Lee Robinson из Vercel сказал об этом:
Vercel верит в поддержку open source и всех веб-фреймворков. Мы рады поддерживать Astro последние два года и с нетерпением ждём углубления партнёрства, видя рост Astro на Vercel.
— Lee Robinson, VP of Developer Experience
Lee и Fred K. Schott (соавтор Astro и куратор проекта) поговорили о будущем Astro, Vercel и о том, что это партнёрство значит для веба.
Unlocking Astro on Vercel
Vercel всегда был отличным выбором для разработчиков Astro. В прошлом году Vercel запустил автоматическое определение фреймворка с нулевой конфигурацией для новых проектов Astro. Это простое изменение сэкономило пользователям Astro бесчисленные часы и улучшило производительность по умолчанию за счёт оптимизированной конфигурации сайта для всех.
Сегодня мы объявляем новый набор функций для пользователей Astro, которые деплоят на Vercel. Они стали возможны благодаря нашей постоянной совместной работе и спонсорству Vercel.
Edge Middleware
Astro middleware теперь работает на edge с Edge Middleware от Vercel. Edge middleware выполняется как можно ближе к пользователям — быстрее отклик. Edge middleware также позволяет настраивать каждый запрос и ответ, проходящий через сервер, потенциально снижая трафик на origin-серверы.
Пользователи Astro теперь могут:
- Поддерживать мультирегиональные URL-схемы, перенаправляя пользователей на локализованный URL.
- Проверять токен пользователя и блокировать неаутентифицированный трафик на сервер.
- Загружать данные из глобальной edge-распределённой базы.
- Определять стратегии кэширования в коде, а не в конфиге.
- Минифицировать HTML ответа при стриминге с сервера.
Edge middleware включается добавлением {edgeMiddleware: true} в адаптер Vercel в конфигурационном файле Astro. В будущей версии эта опция может стать поведением по умолчанию. Подробнее — в документации Vercel о Edge Middleware на Vercel.
Serverless Code Splitting
Серверные приложения Astro теперь работают быстрее на Vercel благодаря serverless code splitting на каждом маршруте.
Раньше Astro собирал всё серверное приложение в один JavaScript-файл. Это упрощало деплой, но ухудшало serverless-производительность. Собирая всё приложение в один файл, время отклика (в частности cold start) увеличивалось из-за неиспользуемого кода по мере роста кодовой базы.
Разбиение приложения на меньшие функции улучшает отклик, убирая неиспользуемый код, не нужный для каждого маршрута. Деплой отдельных маршрутов также позволяет хостингам вроде Vercel лучше распределять нагрузку по нескольким меньшим функциям.
Включить функцию можно сегодня, указав { functionPerRoute: true } в конфигурационном файле Astro. Через несколько дней эта опция станет умолчанием вместе с предстоящим релизом Astro 3.0.
Image Optimization on Vercel
Сайты Astro теперь могут подключаться к встроенному сервису оптимизации изображений Vercel для on-demand оптимизации в Astro 3.0 (также доступно в Astro 2.x за экспериментальным флагом).
Оптимизация изображений доступна на всех платформах через встроенный компонент <Image /> Astro и низкоуровневые image API. Разработчики Astro могут использовать изображения без страха забыть оптимизировать. Cumulative Layout Shift также предотвращается автоматически умной аннотацией height и width на теге img.
Статические сайты уже оптимизируют изображения заранее при сборке. Но серверным приложениям Astro обычно нужно поставлять в production встроенную библиотеку оптимизации Sharp для on-demand оптимизации. Используя встроенный сервис Vercel, разработчики упрощают деплой, улучшают производительность изображений и снижают compute-затраты.
Включить функцию можно сегодня, указав { imageService: true } в конфигурационном файле Astro. В будущей версии эта опция может стать поведением по умолчанию.
Improving Astro for Everyone
Все три функции мы создали вместе с Vercel, используя их Build Output API. Цель — принести их на больше хостинг-платформ в будущем. Всё в этом посте спроектировано платформо-агностично, чтобы любой мог включить те же функции на своей платформе.
Если вы хотите включить эти функции для своей хостинг-платформы, напишите в Discord.
Astro ❤️ Vercel
Astro горд тем, что Vercel присоединяется как новый официальный хостинг-партнёр. Мы благодарны Lee Robinson и всей команде Vercel за поддержку и продвижение Astro. Благодаря компаниям вроде Vercel мы получаем постоянное сопровождение и продолжаем развивать Astro как открытый, финансово устойчивый open-source проект.
Подробнее о том, как мы используем спонсорские средства, — в FUNDING.md на GitHub. Если вы или ваша компания используете Astro в production, рассмотрите поддержку разработки Astro на Open Collective или GitHub Sponsors.
