NodeJS
Entorno de ejecución de Javascript.
- Con el motor V8 de Chrome, en C++.
- Motor de alto rendimiento de Javascript y WebAssembly.
- Orientado a eventos asíncronos, hilo único.
Gestores de paquetes
npm
npm init # -> package.json
npm install # instala las dependencias de package.json
# npm ci es más rápido
npm run # ejecuta un script definido en package.json
npm start # ejecuta el script "start" de package.json
npm install --save-dev/-D
yarn
yarn utiliza el registro de paquetes de npm
npx
node package manager
npx create-react-app # = npm install create-react-app
package.json
$ cat package.json
{
"name": "proj_node",
"version": "1.0.0",
"description": "",
"main": "index.ts",
"scripts": {
"start": "ts-node index.ts",
/* ^^^ apunta al binario local, que desde node_modules
está en .bin/ts-node -> ts-node/dist/bin.js (16KB)
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"devDependencies": {
"@types/node": "^16.9.2",
// ^^^ para tener los tipos de las librerías (ej: http)
"ts-node": "^10.2.1",
// ^^^ evita que tengamos que hacer el build de ts a js
"typescript": "^4.4.3"
// ^^^ para transpilar
}
}