instalar descargar json node.js npm

json - descargar - npm install windows



¿Hay alguna manera de compilar automáticamente el archivo package.json para proyectos Node.js? (10)

1. Elección

Si git y usuario de GitHub:

generate-package más simple, que npm init .

más

y / o no te gusta la plantilla package.json , que genera-paquete o npm init genera:

Usted puede generar su propia plantilla a través de aplicaciones de andamios como generate , sails o yeoman .

2. Relevancia

Esta respuesta es relevante para marzo de 2018. En el futuro, los datos de esta respuesta pueden estar obsoletos.

El autor de esta respuesta utilizó personalmente el paquete generador en marzo de 2018.

3. Limitaciones

Necesitas usar git y GitHub para usar generate-package.

4. Demostración

Por ejemplo, creo una carpeta en blanco sasha-npm-init-vs-generate-package .

4.1. generar-paquete

Mando:

D:/SashaDemoRepositories/sasha-npm-init-vs-generate-package>gen package [16:58:52] starting generate [16:59:01] √ running tasks: [ ''package'' ] [16:59:04] starting package ? Project description? generate-package demo ? Author''s name? Sasha Chernykh ? Author''s URL? https://vk.com/hair_in_the_wind [17:00:19] finished package √ 1m

package.json :

{ "name": "sasha-npm-init-vs-generate-package", "description": "generate-package demo", "version": "0.1.0", "homepage": "https://github.com/Kristinita/sasha-npm-init-vs-generate-package", "author": "Sasha Chernykh (https://vk.com/hair_in_the_wind)", "repository": "Kristinita/sasha-npm-init-vs-generate-package", "bugs": { "url": "https://github.com/Kristinita/sasha-npm-init-vs-generate-package/issues" }, "license": "MIT", "engines": { "node": ">=4" }, "scripts": { "test": "mocha" }, "keywords": [ "generate", "init", "npm", "package", "sasha", "vs" ] }

4.2. npm init

D:/SashaDemoRepositories/sasha-npm-init-vs-generate-package>npm init This utility will walk you through creating a package.json file. It only covers the most common items, and tries to guess sensible defaults. See `npm help json` for definitive documentation on these fields and exactly what they do. Use `npm install <pkg>` afterwards to install a package and save it as a dependency in the package.json file. Press ^C at any time to quit. package name: (sasha-npm-init-vs-generate-package) version: (1.0.0) 0.1.0 description: npm init demo entry point: (index.js) test command: mocha git repository: https://github.com/Kristinita/sasha-npm-init-vs-generate-package keywords: generate, package, npm, package, sasha, vs author: Sasha Chernykh license: (ISC) MIT About to write to D:/SashaDemoRepositories/sasha-npm-init-vs-generate-package/package.json: { "name": "sasha-npm-init-vs-generate-package", "version": "0.1.0", "description": "npm init demo", "main": "index.js", "scripts": { "test": "mocha" }, "repository": { "type": "git", "url": "git+https://github.com/Kristinita/sasha-npm-init-vs-generate-package.git" }, "keywords": [ "generate", "package", "npm", "package", "sasha", "vs" ], "author": "Sasha Chernykh", "license": "MIT", "bugs": { "url": "https://github.com/Kristinita/sasha-npm-init-vs-generate-package/issues" }, "homepage": "https://github.com/Kristinita/sasha-npm-init-vs-generate-package#readme" } Is this ok? (yes) y

{ "name": "sasha-npm-init-vs-generate-package", "version": "0.1.0", "description": "npm init demo", "main": "index.js", "scripts": { "test": "mocha" }, "repository": { "type": "git", "url": "git+https://github.com/Kristinita/sasha-npm-init-vs-generate-package.git" }, "keywords": [ "generate", "package", "npm", "package", "sasha", "vs" ], "author": "Sasha Chernykh", "license": "MIT", "bugs": { "url": "https://github.com/Kristinita/sasha-npm-init-vs-generate-package/issues" }, "homepage": "https://github.com/Kristinita/sasha-npm-init-vs-generate-package#readme" }

Creo que ese generate-package más simple, que npm init .

5. Personalización

Eso crea su propia plantilla package.json , vea ejemplos de generate y de yeoman .

¿Se supone que package.json se edite manualmente? ¿No podría un programa como npm simplemente mirar los archivos, ver las declaraciones de "requerimiento" y luego usarlo para colocar las entradas necesarias en el archivo package.json? ¿Hay algún programa así?


Acabo de escribir un script simple para recopilar las dependencias en ./node_modules. Cumple con mis requerimientos en este momento. Esto puede ayudar a algunos otros, lo publico aquí.

var fs = require("fs"); function main() { fs.readdir("./node_modules", function (err, dirs) { if (err) { console.log(err); return; } dirs.forEach(function(dir){ if (dir.indexOf(".") !== 0) { var packageJsonFile = "./node_modules/" + dir + "/package.json"; if (fs.existsSync(packageJsonFile)) { fs.readFile(packageJsonFile, function (err, data) { if (err) { console.log(err); } else { var json = JSON.parse(data); console.log(''"''+json.name+''": "'' + json.version + ''",''); } }); } } }); }); } main();

En mi caso, los resultados del script anterior:

"colors": "0.6.0-1", "commander": "1.0.5", "htmlparser": "1.7.6", "optimist": "0.3.5", "progress": "0.1.0", "request": "2.11.4", "soupselect": "0.2.0", // Remember: remove the comma character in the last line.

Ahora, puedes copiarlos y pegarlos. ¡Que te diviertas!


Ahora puede usar Yeoman - Modern Web App Scaffolding Tool en el terminal de nodo mediante 3 sencillos pasos.

En primer lugar, deberá instalar yo y otras herramientas necesarias:

$ npm install -g yo bower grunt-cli gulp

Para armar una aplicación web, instale el generador generador de aplicaciones web :

$ npm install -g generator-webapp // create scaffolding

Corre yo y ... ya terminaste

$ yo webapp // create scaffolding

Yeoman puede escribir código repetitivo para toda su aplicación web o Controladores y modelos. Puede activar un servidor web de vista previa en vivo para editar y compilar; no solo que también puede ejecutar sus pruebas unitarias, minimizar y concatenar su código, optimizar imágenes y más ...

Yeoman (yo) : herramienta de andamiaje que ofrece un ecosistema de andamios específicos del marco, llamados generadores, que se pueden utilizar para realizar algunas de las tareas tediosas mencionadas anteriormente.

Grunt / gulp : se utiliza para crear, previsualizar y probar su proyecto.

Bower : se utiliza para la administración de dependencias, por lo que ya no tiene que descargar manualmente las bibliotecas de aplicaciones para usuario.


Basado en la respuesta de Pylinux, a continuación se muestra una solución para el sistema operativo Windows:

dir node_modules > abc.txt FOR /F %k in (abc.txt) DO npm install --save

Espero eso ayude.


Ejecutar npm init -y hace que su package.json con todos los valores predeterminados.
A continuación, puede cambiar package.json consecuencia
Esto ahorra tiempo muchas veces al evitar presionar enter en cada comando en npm init


En primer lugar, corre

npm init

... le hará algunas preguntas ( lea esto primero ) sobre su proyecto / paquete y luego genere un archivo package.json para usted.

Luego, una vez que tenga un archivo package.json, use

npm install <pkg> --save

o

npm install <pkg> --save-dev

... para instalar una dependencia y agregarla automáticamente a la lista de dependencies su package.json .

(Nota: Es posible que deba modificar manualmente los rangos de versión para sus dependencias).


use el comando npm init -f para generar el archivo package.json y luego use --save después de cada comando para que cada módulo se actualice automáticamente dentro de su package.json para ex: npm install express --save


npm init

para crear el archivo package.json y luego usas

ls node_modules/ |xargs npm install --save

para rellenar los módulos que tienes en la carpeta node_modules.

Edición: @paldepind señaló que el segundo comando es redundante porque npm init ahora agrega automáticamente lo que tiene en su carpeta node_modules /. No sé si este ha sido siempre el caso, pero ahora al menos funciona sin el segundo comando.


Línea de comando :

npm init

creará el archivo package.json

Para instalar, actualizar y desinstalar paquetes en dependencias en el archivo package.json:

Línea de comando :

npm install <pkg>@* --save

agregará automáticamente la última versión del paquete bajo las dependencias en el archivo package.json

EX:

npm install node-markdown@* --save

Línea de comando :

npm install <pkg> --save

también agregará automáticamente la última versión del paquete bajo las dependencias en el archivo package.json

Si necesita una versión específica para un paquete, use esta línea de comando :

npm install <pkg>@<version> --save

agregará automáticamente una versión específica del paquete bajo las dependencias en el archivo package.json

EX:

npm install [email protected] --save

Si necesita un rango específico de versión para un paquete, use esta línea de comando :

npm install <pkg>@<version range>

agregará automáticamente la última versión del paquete entre el rango de la versión bajo las dependencias en el archivo package.json

EX:

npm install koa-views@">1.0.0 <1.2.0" --save

Para más detalles sobre cómo escribir la versión para el paquete npm Doc

Línea de comando :

npm update --save

actualizará los paquetes en el archivo package.json y agregará automáticamente la versión actualizada de todos los paquetes bajo las dependencias en el archivo package.json

Línea de comando :

npm uninstall <pkg> --save

eliminará automáticamente el paquete de las dependencias en el archivo package.json y eliminará el paquete de la carpeta node_module


Npm utiliza el archivo package.json para conocer su proyecto node.js.

Utilice npm init para generar archivos package.json por usted!

Viene incluido con npm. Lea su documentación aquí: https://docs.npmjs.com/cli/init

Además, hay una herramienta que puede usar en sus propios proyectos para generar este archivo mediante programación (está hecho por el fabricante de npm): https://github.com/isaacs/init-package-json