Недавно наткнулся на проект Rspack. Лендинг гласит: очень быстрый бандлер (сборщик) для JS. В последнее время подобных проектов появляется всё больше. Причины в целом понятны: кода на JS становится больше и привычные инструменты перестают с ним справляться. Даже не так. Webpack, Parcel и другие проверенные временем решения продолжают хорошо работать, но есть вопросы к скорости сборки. В проектах с большим количеством модулей хочется побыстрей, а быстрей сделать непросто — упираемся в сам JavaScript.
Новые инструменты появляются, но огорчает, что помимо повышения производительности, они пытаются заново изобрести то, что и так хорошо работает. Скорость увеличивается, но сразу перейти на новый инструмент не выходит. Не хватает возможностей, которые нужны в проекте здесь и сейчас.
Условно: вышел новый бандлер. Он очень быстро всё собирает, но нет плагинов для решения текущих задач проекта. Хочешь сейчас — садись и пиши. Смотришь на это и порой создаётся впечатление, что все пытаются изобрести «ещё одно колесо», а не повозку. Толку от производительности, если прямо сейчас нельзя взять и перевести проект на новые рельсы? Мало кто готов резко сорваться и начать контрибьютить в новый проект.
Инструментам нужна экосистема. На её формирование требуется время.
Когда читал про Rspack, мне понравилось, что ребята не просто решают проблему производительности, а хотят переиспользовать то, что было создано для webpack и продолжает хорошо работать. Rspack поддерживает популярные плагины для webpack. В теории должен поддерживать любые, но пока это не так. Интересно понаблюдать за дальнейшим развитием и судьбой проекта.
Как-нибудь запишу видео и потестирую Rspack с популярными плагинами webpack.
P.S. Rspack представлен в виде тестовой версии. Использовать в production пока нельзя.