Заботливый иннерсорс
В каждой более-менее крупной IT-компании существует своя культура кода, видение и стайлгайды. Всё это в долгосрочной перспективе можно формализовать в виде внутренних NPM-пакетов, чтобы ускорить старт новых проектов и упростить поддержку существующих. Но если с недостаточной ответственностью отнестись к DX, то общий пакет может создать дополнительные проблемы и ещё сильнее усложнить жизнь коллегам выяснением, почему же именно в их проекте всё сломалось. Чтобы не наступать на грабли, можно обратиться к опенсорс-проектам и позаимствовать инфраструктурные решения у них.
Полезные ссылки
Менеджмент зависимостей в Javascript - You may not need a bundler
Pure ESM package - Named imports in CommonJS
- ESM in NodeJS Typescript
- Types for submodules
Module resolution: bundler Vite library mode Пример исправления для поддержки SSR Не нужно бандлить библиотеку - Rollup preserveModules
ComonJS vs ESM - Dual Package Hazard
Валидация package.json