У меня есть похожий вопрос к этому , но не совсем то же самое.
Я хотел бы, чтобы пользователь моего приложения установил его с любыми зависимостями, необходимыми для его использования. Так, например, если они хотят сохранить в MongoDB, будут установлены только библиотеки, связанные с Mongo, но если они хотят сохранить в Redis, будут установлены только библиотеки, связанные с Redis. Я не хочу заставлять их загружать и устанавливать библиотеки, которые они не будут использовать.
Я знаю, что могу сделать это для целей разработки devDependencies, но это идет еще дальше. Как говорится в ответе на вопрос выше, это более тесно связано с профилями Python setuptools extras_requireи Clojure leiningen. Что-нибудь подобное в npm? Я действительно чувствую, что devDependenciesдолжен быть devпрофиль более универсального способа определения зависимостей.
package.json, которое было решено в других менеджерах пакетов.
MyPackage-CoreMyPackage-Db-MongoMyPackage-Db-Redisи т. д. во многом люди делают модули, предназначенные для расширения angularjs .