Boa noite Maria
Para instalar uma dependência / pacote indicando produção, com o npm ( node package manager ) pode ser feito da seguinte forma:
Forma completa
npm install nome_do_pacote
Forma reduzida
npm i nome_do_pacote
Ou seja, para instalar em produção você só informa o install, diferentemente de quando deseja instalar em desenvolvimento que pode-se utilizar
npm i -D nome_do_pacote
npm i --save-dev nome_do_pacote
Para ambos os 2 comandos acima, possuem o mesmo significado ( instalar em desenvolvimento ) mas escritos de forma diferente.
Quando dizemos que queremos instalar em desenvolvimento, significa que o pacote será utilizado somente durante o desenvolvimento do projeto, um pacote que desempenha essa ação, seria o typescript, ou seja o typescript é transpilado em javascript ( este é interpretado no navegador no contexto de front-end ). Porém, não precisamos do typescript em ambiente de produção, uma vez que nosso código final já foi transpilado em javascript. Um outro exemplo, é o eslint ( pacote para monitorar a escrita do código e indicar problemas ou forçar um estilo padronizado ), este é utilizado apenas em desenvolvimento, já que produção não tem necessidade de uso devido ao código final já estar disponibilizado.
Essas são algumas reflexões e espero ter ajudado
Atenciosamente
Felipe D. R