Атланта, Джорджия — 12 мая, 10:00 по восточному времени Сегодня Valor Software вместе с Nx и Rosa объявляют о поддержке Rspack для NestJS.

«Больницы и медицинские работники доверяют Розе управление своим расписанием и назначениями. Пациенты полагаются на Розу, чтобы записаться на прием к врачу. Как компания, ответственная за спасение жизней, мы знаем, что даже один момент простоя может быть разрушительным. Каждая секунда имеет значение! Инцидент простоя производства, ожидающий сборок, которые занимают 15+ минут, просто недопустим, когда на кону жизни людей. Поэтому мы постоянно ищем способы улучшить процесс сборки

Вишенка на торте: это также улучшает DX.

Когда мы увидели объявление Rspack от Valor в марте, мы поняли, что хотим посмотреть, сможет ли Rspack улучшить наши сборки. Мы связались с ними, чтобы профинансировать этот проект». — Антуан Паре: основатель и технический директор Rosa

Роза выбрала Valor Software, чтобы добавить поддержку NestJS в Rspack через Nx и интегрировать ее в свои существующие приложения. Поработав в сотрудничестве с командой Nx, Valor рад сообщить, что первоначальная поддержка и результаты производительности теперь доступны для выпуска и тестирования более широким сообществом.

«Основываясь на нашем партнерстве с Valor Software и наших существующих интеграциях для Rspack, добавленных нашей командой в прошлом месяце, нам было приятно сотрудничать в расширении нашей поддержки NestJS.

Этот проект дал нам возможность не только улучшить существующую поддержку NestJS, но и улучшить существующую интеграцию с Rspack.

Производительность просто потрясающая, а экосистема удобна для работы», — Катерина Скрумпелу, старший инженер-программист в Nx

Имея более 56 тысяч звезд на GitHub и более 2,2 миллиона загрузок в неделю на NPM, NestJS является невероятно популярным, если не стандартным фреймворком Node.js для разработчиков в 2023 году. Под прикрытием NestJS использовала веб-пакет для выполнения своих сборок и дополнительно поддерживает пользовательскую конфигурацию сборки. Этот механизм был использован для добавления поддержки Rspack для NestJS.

«Когда я создал NestJS в 2017 году, я работал над ним как над сторонним проектом. В то время я хотел создать что-то масштабируемое, эффективное и полностью поддерживающее TypeScript. С момента своего создания NestJS стала одной из самых популярных платформ Node.js, о которых я знаю.

Когда наши партнеры из Valor связались с нами и упомянули, что собираются добавить поддержку Rspack, мы были рады видеть, какого прогресса они достигнут. Увидев первоначальные улучшения производительности, мы рады приветствовать Rspack среди возможных способов создания NestJS», — Камил Мысливец, соучредитель Trilon и создатель NestJS

Полученные результаты

«Перенос NestJS на Rspack — это часть общего проекта по улучшению процесса сборки для Rosa. Благодаря Valor мы смогли сократить время сборки примерно с 30 до 7 минут менее чем за месяц. После того, как мы завершим оставшиеся изменения, которые находятся в процессе, мы ожидаем, что для полной сборки нашего конвейера CI потребуется менее 3 минут. Мы с нетерпением ждем возможности поделиться более подробной информацией, как только мы закончим». — Антуан Паре: основатель и технический директор Rosa

Ниже приведены результаты производительности времени сборки для одного из проектов, преобразованных в Rspack компанией Valor для команды Rosa.

Результаты веб-пакета

Результаты Rspack

Было незначительное изменение для переключения на плагин rspack «withNx» в нашей конфигурации веб-пакета (теперь Rspack) на «@nrwl/rspack» и настройки project.json для использования исполнителя «@nrwl/rspack:rspack» и указания на «rspackConfig» вместо «webpackConfig»

«После проверки конфигураций приложений можно было сделать некоторые улучшения в самом веб-пакете, чтобы добиться части преимуществ, наблюдаемых здесь, с помощью Rspack. Однако это требует сочетания глубоких знаний о веб-пакете и увеличения конфигурации, которую затем необходимо будет поддерживать. С Rspack все оптимизации и улучшения предоставляются «бесплатно» и просто работают. Он настроен на производительность по умолчанию, и вероятность ошибки очень мала». — Зак Джексон: главный архитектор Lululemon и создатель Webpack Module Federation

Попробуйте сегодня

Установите плагин Nx сегодня и попробуйте Rspack, Nx и NestJS! У нас есть простой пример, демонстрирующий, как использовать эту мощную комбинацию технологий на GitHub.

Нерешенные вопросы, требующие дальнейших усилий

Хотя сам проект и этот выпуск считаются успешными, еще предстоит проделать некоторую работу по его улучшению. Мы будем рады любой помощи с запросами на вытягивание!

Проблемы с Rspack:

  • Поддержка ForkTSCheckerWebpackPlugin, issue 2592

Проблемы Nx:

  • Поддержка опции FileReplacement для проектов Rspack, issue 218
  • Поддержка опции extractLicenses для проектов Rspack issue 218
  • Поддержка опции extractLicenses для проектов Rspack, issue 219
  • Поддержка опции maxWorkers для проектов Rspack, issue 224
  • Поддержка опции memoryLimit для проектов Rspack issue 225
  • Поддержка опции generatePackageJson проектов Rspack, issue 226

О доблестном программном обеспечении

Valor Software, основанная в 2013 году, является ведущей компанией по разработке программного обеспечения и консалтингу, которая специализируется на продвижении и объединении технологий с открытым исходным кодом для достижения технологического и делового прогресса для своих клиентов. Valor привносит богатый опыт работы с открытым исходным кодом, внося свой вклад в Module Federation в качестве членов основной команды, работая над Angular в качестве участников и создав ngx-bootstrap (библиотека компонентов Angular с более чем 300 тысячами загрузок в неделю).

Если вы хотите выйти на новый уровень развития или хотели бы работать с нами над созданием чего-то удивительного, свяжитесь с нами по электронной почте [email protected].