En bref: ce n'est pas possible et, comme il semble, ne sera jamais pris en charge (voir ici https://github.com/npm/npm/issues/775 ).
Il y a des solutions de travail hacky avec l'utilisation de la CLI ou des variables ENV (voir la réponse actuellement sélectionnée), .npmrc-Config-Files ou npm link
- ce qu'ils ont tous en commun: ils ne sont jamais seulement spécifiques au projet, mais toujours d'une certaine sorte des global
solutions.
Pour moi, aucune de ces solutions n'est vraiment propre car les contributeurs à votre projet ont toujours besoin de créer une configuration spéciale ou d'avoir des connaissances particulières - ils ne peuvent pas simplement npm install
et cela fonctionne.
Donc: Soit vous devrez mettre votre package.json dans le même répertoire où vous voulez que vos node_modules soient installés, soit vivre avec le fait qu'ils seront toujours dans le répertoire racine de votre projet.