Фред Шотт , разработчик программного обеспечения и бывший сотрудник Google в команде Polymer, запустил новый CDN для своего проекта Pika . Миссия Шотта с Pika – «сделать современный JavaScript более доступным, упростив поиск, публикацию, установку и использование современных пакетов на npm». Pika предоставляет доступный для поиска каталог «модульных» пакетов, доступных на npm – пакетов, которые используют более компактный синтаксис модуля ES (ESM), что приводит к меньшим размерам пакетов Javascript.
npm в настоящее время перечисляет 59 851 модуль ES . Это составляет примерно 7% от общего числа пакетов в npm, экспортирующих модуль ES, но их число неуклонно растет.
Pika упрощает поиск этих пакетов, и результаты будут включать только те, которые имеют определенную точку входа «модуль» в их манифесте package.json. Каждый список объединяет соответствующую информацию на одной странице, выделяя важные детали.
Одним из главных преимуществ использования модулей ES является то, что они изначально работают в Интернете, без необходимости в сборщике. В сообщении под названием « Будущее без Webpack » Шотт утверждает, что разработчики JavaScript «настолько погружены в мир сборщиков пакетов», что упускают из виду возможности использования зависимостей ESM, которые работают непосредственно в сети:
За последние несколько лет объединение JavaScript превратилось из оптимизации, предназначенной только для производства, в обязательный этап сборки для большинства веб-приложений. Любите вы это или ненавидите, трудно отрицать, что сборщики добавили массу новых сложностей в веб-разработку – область разработки, которая всегда гордилась своим принципом просмотра исходного кода и легкости начала работы.
@ pika / web – это попытка освободить веб-разработку от требований сборщика. В 2019 году вам следует использовать упаковщик, потому что вы этого хотите, а не потому, что вам это нужно.
Шотт создал @ pika / web, чтобы упростить разработчикам использование модулей ES, даже если у них нет совместимых зависимостей. Он предоставляет инструмент во время установки, который не совсем является инструментом сборки или сборщиком, но работает для вывода зависимостей npm для веб-сайтов в один файл ESM .js:
@ pika / web проверяет ваш манифест package.json на наличие «зависимостей», которые экспортируют действительную точку входа «модуля» ESM, а затем устанавливает их в локальный каталог web_modules /. @ pika / web работает с любым пакетом ESM, даже с внутренними зависимостями ESM и Common.js.
Установленные пакеты запускаются в браузере, потому что @ pika / web объединяет каждый пакет в один готовый к работе файл ESM .js. Например: весь пакет preact установлен в web_modules / preact.js. Это избавляет от всего плохого, что пакет может делать внутри, сохраняя при этом исходный интерфейс пакета.
На этой неделе Schott объявил о доступности новой сети CDN Pika для доставки пакетов современных модулей ES. Он использует конструктор пакетов pikapkg / web для работы с любым пакетом ESM, а CDN автоматически обрабатывает любые не-ESM зависимости этого пакета. Pika CDN автоматически обнаруживает браузер посетителя и обслуживает JS, оптимизированный для среды, устраняя полифилы и раздувание транспиляторов везде, где это возможно.
«Pika CDN использует естественные возможности кэширования вашего браузера, чтобы ускорить загрузку ваших страниц, особенно при первом посещении», – сказал Шотт. «Первая загрузка 0 мс даже возможна (по крайней мере, для ваших зависимостей), если все пакеты были просмотрены раньше.
«С нашей CDN авторы пакетов могут распространять более современные, неминифицированные пакеты, не беспокоясь о том, как их обслуживать напрямую. Вместо этого наш изящный конструктор пакетов автоматически преобразует каждый пакет – и любые унаследованные подзависимости – в единый миниатюрный, готовый к импорту файл JavaScript ».
Шотт недавно оставил свою позицию в Ripple, чтобы работать полный рабочий день над Pika, проектом, который, по его мнению, продвинет экосистему JavaScript вперед.
«Уйти из команды было одним из самых сложных решений, которые я когда-либо принимал, но я знаю, что здесь я нужен», – сказал он. «Я так рад быть частью будущего Интернета, каким бы он ни был».
Пика ищет корпоративных спонсоров. На данный момент Schott оплачивает расходы на сервер с помощью Patreon .
Поскольку до крайнего срока соблюдения GDPR ЕС осталось всего 178 дней , многие владельцы сайтов…
Команда Gutenberg создаст станцию тестирования удобства использования в WordCamp US, где посетители смогут принять участие…
Сегодня компания 10up опубликовала предварительную версию своего плагина Distributor , нового решения для синдикации контента…
На этой неделе был выпущен Gutenberg 1.8 с несколькими заметными улучшениями, которые предоставят разработчикам плагинов…
На этой неделе был выпущен Gutenberg 15.5 с новыми функциями и улучшениями возможностей полнофункционального редактирования…
DesktopServer выпустил версию 3.8.4 своего программного обеспечения для локальной разработки. Эта версия включает в себя…