From f63c59d9eec0461d81d360cfff253c7cb66f827f Mon Sep 17 00:00:00 2001 From: Abdallah Gaber Date: Wed, 3 Jul 2024 11:41:10 +0300 Subject: [PATCH] Roadmap: Node.js Content and Resources Updates and Fixes (#6015) Corrected type tags, added some extra copy, added new links. --------- Co-authored-by: dsh --- .../100-nodejs-introduction/102-history-of-nodejs.md | 1 + .../nodejs/content/101-nodejs-modules/102-global-keyword.md | 3 ++- src/data/roadmaps/nodejs/content/102-nodejs-npm/100-npx.md | 4 ++-- .../102-nodejs-npm/101-global-install-vs-local-install.md | 6 +++--- .../nodejs/content/102-nodejs-npm/102-updating-packages.md | 6 +++--- .../nodejs/content/102-nodejs-npm/104-running-scripts.md | 2 +- src/data/roadmaps/nodejs/content/102-nodejs-npm/index.md | 4 ++-- .../content/105-nodejs-working-with-files/103-glob.md | 2 +- .../content/105-nodejs-working-with-files/104-globby.md | 2 +- .../content/105-nodejs-working-with-files/105-fs-extra.md | 2 +- .../content/105-nodejs-working-with-files/106-chokidar.md | 2 +- .../101-printing-output/104-cli-progress.md | 2 +- .../102-taking-input/101-prompts.md | 2 +- .../103-command-line-args/101-commander-js.md | 2 +- .../104-environment-variables/100-dotenv.md | 2 +- src/data/roadmaps/nodejs/content/107-nodejs-apis/104-got.md | 2 +- .../nodejs/content/107-nodejs-apis/108-jsonwebtoken.md | 2 +- .../nodejs/content/109-nodejs-template-engines/102-ejs.md | 2 +- .../110-nodejs-databases/100-relational/102-sequelize.md | 2 +- .../roadmaps/nodejs/content/111-nodejs-testing/101-mocha.md | 2 +- .../nodejs/content/112-nodejs-logging/100-morgan.md | 2 +- .../content/113-nodejs-keep-app-running-prod/101-forever.md | 2 +- 22 files changed, 29 insertions(+), 27 deletions(-) diff --git a/src/data/roadmaps/nodejs/content/100-nodejs-introduction/102-history-of-nodejs.md b/src/data/roadmaps/nodejs/content/100-nodejs-introduction/102-history-of-nodejs.md index 0487888e3..e3000f468 100644 --- a/src/data/roadmaps/nodejs/content/100-nodejs-introduction/102-history-of-nodejs.md +++ b/src/data/roadmaps/nodejs/content/100-nodejs-introduction/102-history-of-nodejs.md @@ -6,4 +6,5 @@ Visit the following resources to learn more: - [@article@Rising Stack - History of Node.js on a Timeline](https://blog.risingstack.com/history-of-node-js/) - [@article@SAP Press - How Did Node.js Come About?](https://blog.sap-press.com/how-did-node.js-come-about) +- [@video@Node.js: The Documentary | An origin story](https://youtu.be/LB8KwiiUGy0) - [@feed@Explore top posts about Node.js](https://app.daily.dev/tags/nodejs?ref=roadmapsh) diff --git a/src/data/roadmaps/nodejs/content/101-nodejs-modules/102-global-keyword.md b/src/data/roadmaps/nodejs/content/101-nodejs-modules/102-global-keyword.md index fcd3b708c..d652d562d 100644 --- a/src/data/roadmaps/nodejs/content/101-nodejs-modules/102-global-keyword.md +++ b/src/data/roadmaps/nodejs/content/101-nodejs-modules/102-global-keyword.md @@ -1,9 +1,10 @@ # global keyword -In browsers, the top-level scope is the global scope. This means that within the browser var something will define a new global variable. In Node.js this is different. The top-level scope is not the global scope; `var something` inside a Node.js module will be local to that module. +In browsers, the top-level scope is the global scope, and its global object is called the `window` object. Within the browser, `var something` will define a new global variable inside the `window` object. In Node.js, this is different. The top-level scope is **not** the global scope; `var something` inside a Node.js module will be local to that module. Visit the following resources to learn more: - [@official@global Keyword in Node.js](https://nodejs.org/api/globals.html#global) +- [@article@What is the 'global' object in NodeJS](https://stackoverflow.com/questions/43627622/) - [@video@What is Global Object?](https://www.youtube.com/watch?v=jn8PZNBmKm0) - [@video@Global Object in Node](https://www.youtube.com/watch?v=PY-AycMkEAg) diff --git a/src/data/roadmaps/nodejs/content/102-nodejs-npm/100-npx.md b/src/data/roadmaps/nodejs/content/102-nodejs-npm/100-npx.md index 7cce24320..e4a4f5bcf 100644 --- a/src/data/roadmaps/nodejs/content/102-nodejs-npm/100-npx.md +++ b/src/data/roadmaps/nodejs/content/102-nodejs-npm/100-npx.md @@ -1,9 +1,9 @@ # npx -npx is a very powerful command that's been available in npm starting version 5.2, released in July 2017. If you don't want to install npm, you can install npx as a standalone package. npx lets you run code built with Node.js and published through the npm registry. +npx is a very powerful command that's been available in npm starting version 5.2, released in July 2017. If you don't want to install npm, you can install npx as a standalone package. npx lets you run code built with Node.js and published through the npm registry, without needing to install the package itself. This is particularly useful for trying out new tools, running one-time commands, or using packages in shared environments where global installations are undesirable. npx takes care of downloading the package on-the-fly, running the desired command, and then cleaning up the temporary installation. This keeps your project's dependencies lean and avoids version conflicts. Visit the following resources to learn more: - [@article@Introduction to the npx Node.js Package Runner](https://medium.com/@maybekatz/introducing-npx-an-npm-package-runner-55f7d4bd282b) - [@article@npm vs npx — What’s the Difference?](https://www.freecodecamp.org/news/npm-vs-npx-whats-the-difference/) -- [@article@Official Documentation:](https://docs.npmjs.com/cli/v7/commands/npx/) +- [@official@Official Documentation](https://docs.npmjs.com/cli/v7/commands/npx/) diff --git a/src/data/roadmaps/nodejs/content/102-nodejs-npm/101-global-install-vs-local-install.md b/src/data/roadmaps/nodejs/content/102-nodejs-npm/101-global-install-vs-local-install.md index 0d6b05996..0d3c6b99e 100644 --- a/src/data/roadmaps/nodejs/content/102-nodejs-npm/101-global-install-vs-local-install.md +++ b/src/data/roadmaps/nodejs/content/102-nodejs-npm/101-global-install-vs-local-install.md @@ -4,6 +4,6 @@ NodeJS and NPM allow two methods of installing dependencies/packages: Local and Visit the following resources to learn more: -- [@article@Downloading and installing packages locally](https://docs.npmjs.com/downloading-and-installing-packages-locally) -- [@article@Downloading and installing packages globally](https://docs.npmjs.com/downloading-and-installing-packages-globally) -- [@article@NPM Install Docs](https://docs.npmjs.com/cli/v8/commands/npm-install) +- [@official@Downloading and installing packages locally](https://docs.npmjs.com/downloading-and-installing-packages-locally) +- [@official@Downloading and installing packages globally](https://docs.npmjs.com/downloading-and-installing-packages-globally) +- [@official@NPM Install Docs](https://docs.npmjs.com/cli/commands/npm-install) diff --git a/src/data/roadmaps/nodejs/content/102-nodejs-npm/102-updating-packages.md b/src/data/roadmaps/nodejs/content/102-nodejs-npm/102-updating-packages.md index e24c0bc2f..a11c407a8 100644 --- a/src/data/roadmaps/nodejs/content/102-nodejs-npm/102-updating-packages.md +++ b/src/data/roadmaps/nodejs/content/102-nodejs-npm/102-updating-packages.md @@ -1,9 +1,9 @@ # Updating Packages -npm provides various features to help install and maintain the project's dependencies. Dependencies get updates with new features and fixes, so upgrading to a newer version is recommended. We use npm update commands for this. +npm provides various features to help install and maintain the project's dependencies. Dependencies get updates with new features and fixes, so upgrading to a newer version is recommended. We use `npm update` commands for this. Visit the following resources to learn more: - [@article@How to update?](https://www.freecodecamp.org/news/how-to-update-npm-dependencies/) -- [@video@Updating dependencies](https://www.youtube.com/watch?v=Ghdfdq17JAY) -- [@article@Updating packages downloaded from the registry](https://docs.npmjs.com/updating-packages-downloaded-from-the-registry) +- [@video@How to Update All NPM Dependencies At Once](https://www.youtube.com/watch?v=Ghdfdq17JAY) +- [@official@Updating packages downloaded from the registry](https://docs.npmjs.com/updating-packages-downloaded-from-the-registry) diff --git a/src/data/roadmaps/nodejs/content/102-nodejs-npm/104-running-scripts.md b/src/data/roadmaps/nodejs/content/102-nodejs-npm/104-running-scripts.md index e10c73393..b0647eb12 100644 --- a/src/data/roadmaps/nodejs/content/102-nodejs-npm/104-running-scripts.md +++ b/src/data/roadmaps/nodejs/content/102-nodejs-npm/104-running-scripts.md @@ -5,4 +5,4 @@ In Node.js, npm scripts are used for the purpose of initiating a server, startin Visit the following resources to learn more: - [@article@Example of Running Scripts](https://riptutorial.com/node-js/example/4592/running-scripts) -- [@article@Running Scripts](https://docs.npmjs.com/downloading-and-installing-packages-locally) +- [@official@Running Scripts](https://docs.npmjs.com/downloading-and-installing-packages-locally) diff --git a/src/data/roadmaps/nodejs/content/102-nodejs-npm/index.md b/src/data/roadmaps/nodejs/content/102-nodejs-npm/index.md index ba2e9a1c8..370e6aa82 100644 --- a/src/data/roadmaps/nodejs/content/102-nodejs-npm/index.md +++ b/src/data/roadmaps/nodejs/content/102-nodejs-npm/index.md @@ -8,7 +8,7 @@ Visit the following resources to learn more: - [@official@What is npm?](https://nodejs.org/en/learn/getting-started/an-introduction-to-the-npm-package-manager) - [@official@An introduction to the npm package manager](https://nodejs.org/en/learn/getting-started/an-introduction-to-the-npm-package-manager) -- [@article@Official Website](https://www.npmjs.com/) -- [@article@Official Documentation](https://docs.npmjs.com/) +- [@official@Official Website](https://www.npmjs.com/) +- [@official@Official Documentation](https://docs.npmjs.com/) - [@video@NPM Crash Course](https://www.youtube.com/watch?v=jHDhaSSKmB0) - [@feed@Explore top posts about Node.js](https://app.daily.dev/tags/nodejs?ref=roadmapsh) diff --git a/src/data/roadmaps/nodejs/content/105-nodejs-working-with-files/103-glob.md b/src/data/roadmaps/nodejs/content/105-nodejs-working-with-files/103-glob.md index 69a9f2742..ee3020a97 100644 --- a/src/data/roadmaps/nodejs/content/105-nodejs-working-with-files/103-glob.md +++ b/src/data/roadmaps/nodejs/content/105-nodejs-working-with-files/103-glob.md @@ -4,4 +4,4 @@ The glob pattern is most commonly used to specify filenames, called wildcard cha Visit the following resources to learn more: -- [@article@NPM Glob](https://www.npmjs.com/package/glob) +- [@official@NPM Glob](https://www.npmjs.com/package/glob) diff --git a/src/data/roadmaps/nodejs/content/105-nodejs-working-with-files/104-globby.md b/src/data/roadmaps/nodejs/content/105-nodejs-working-with-files/104-globby.md index f28423274..6d3a94b3f 100644 --- a/src/data/roadmaps/nodejs/content/105-nodejs-working-with-files/104-globby.md +++ b/src/data/roadmaps/nodejs/content/105-nodejs-working-with-files/104-globby.md @@ -6,5 +6,5 @@ Based on fast-glob but adds a bunch of useful features. Visit the following resources to learn more: -- [@article@NPM Globby](https://www.npmjs.com/package/globby) +- [@official@NPM Globby](https://www.npmjs.com/package/globby) - [@opensource@Github Globby](https://github.com/sindresorhus/globby) diff --git a/src/data/roadmaps/nodejs/content/105-nodejs-working-with-files/105-fs-extra.md b/src/data/roadmaps/nodejs/content/105-nodejs-working-with-files/105-fs-extra.md index 4f514778b..d94383967 100644 --- a/src/data/roadmaps/nodejs/content/105-nodejs-working-with-files/105-fs-extra.md +++ b/src/data/roadmaps/nodejs/content/105-nodejs-working-with-files/105-fs-extra.md @@ -4,5 +4,5 @@ fs-extra adds file system methods that aren't included in the native fs module a Visit the following resources to learn more: -- [@article@Official Website](https://www.npmjs.com/package/fs-extra) +- [@official@Official Website](https://www.npmjs.com/package/fs-extra) - [@article@fs-extra vs fs](https://ar.al/2021/03/07/fs-extra-to-fs/) diff --git a/src/data/roadmaps/nodejs/content/105-nodejs-working-with-files/106-chokidar.md b/src/data/roadmaps/nodejs/content/105-nodejs-working-with-files/106-chokidar.md index 71a31c295..504621b53 100644 --- a/src/data/roadmaps/nodejs/content/105-nodejs-working-with-files/106-chokidar.md +++ b/src/data/roadmaps/nodejs/content/105-nodejs-working-with-files/106-chokidar.md @@ -4,4 +4,4 @@ Chokidar is a fast open-source file watcher for node. js. You give it a bunch of Visit the following resources to learn more: -- [@article@NPM Docs](https://www.npmjs.com/package/chokidar) +- [@official@NPM Docs](https://www.npmjs.com/package/chokidar) diff --git a/src/data/roadmaps/nodejs/content/106-nodejs-command-line-apps/101-printing-output/104-cli-progress.md b/src/data/roadmaps/nodejs/content/106-nodejs-command-line-apps/101-printing-output/104-cli-progress.md index f883bc062..cbb693228 100644 --- a/src/data/roadmaps/nodejs/content/106-nodejs-command-line-apps/101-printing-output/104-cli-progress.md +++ b/src/data/roadmaps/nodejs/content/106-nodejs-command-line-apps/101-printing-output/104-cli-progress.md @@ -4,5 +4,5 @@ CLI-Progress is a package that provides a custom progress bar for CLI applicatio Visit the following resources to learn more: -- [@article@CLI-Progress Documentation](https://www.npmjs.com/package/cli-progress) +- [@official@CLI-Progress Documentation](https://www.npmjs.com/package/cli-progress) - [@feed@Explore top posts about CLI](https://app.daily.dev/tags/cli?ref=roadmapsh) diff --git a/src/data/roadmaps/nodejs/content/106-nodejs-command-line-apps/102-taking-input/101-prompts.md b/src/data/roadmaps/nodejs/content/106-nodejs-command-line-apps/102-taking-input/101-prompts.md index 62ea2d301..4edc7889b 100644 --- a/src/data/roadmaps/nodejs/content/106-nodejs-command-line-apps/102-taking-input/101-prompts.md +++ b/src/data/roadmaps/nodejs/content/106-nodejs-command-line-apps/102-taking-input/101-prompts.md @@ -4,4 +4,4 @@ Prompts is a higher level and user friendly interface built on top of Node.js's Visit the following resources to learn more: -- [@article@Official Documentation](https://www.npmjs.com/package/prompts) +- [@official@Official Documentation](https://www.npmjs.com/package/prompts) diff --git a/src/data/roadmaps/nodejs/content/106-nodejs-command-line-apps/103-command-line-args/101-commander-js.md b/src/data/roadmaps/nodejs/content/106-nodejs-command-line-apps/103-command-line-args/101-commander-js.md index 1f9d6e97b..a0ba1ce5b 100644 --- a/src/data/roadmaps/nodejs/content/106-nodejs-command-line-apps/103-command-line-args/101-commander-js.md +++ b/src/data/roadmaps/nodejs/content/106-nodejs-command-line-apps/103-command-line-args/101-commander-js.md @@ -4,5 +4,5 @@ Commander is a light-weight, expressive, and powerful command-line framework for Visit the following resources to learn more: -- [@article@Official Documentation](https://www.npmjs.com/package/commander) +- [@official@Official Documentation](https://www.npmjs.com/package/commander) - [@feed@Explore top posts about JavaScript](https://app.daily.dev/tags/javascript?ref=roadmapsh) diff --git a/src/data/roadmaps/nodejs/content/106-nodejs-command-line-apps/104-environment-variables/100-dotenv.md b/src/data/roadmaps/nodejs/content/106-nodejs-command-line-apps/104-environment-variables/100-dotenv.md index 62c83477b..6d2c693e7 100644 --- a/src/data/roadmaps/nodejs/content/106-nodejs-command-line-apps/104-environment-variables/100-dotenv.md +++ b/src/data/roadmaps/nodejs/content/106-nodejs-command-line-apps/104-environment-variables/100-dotenv.md @@ -5,7 +5,7 @@ dotenv is a zero-dependency module that loads environment variables from a `.env Visit the following resources to learn more: - [@opensource@dotenv Docs](https://github.com/motdotla/dotenv#readme) -- [@article@Dotenv package](https://www.npmjs.com/package/dotenv) +- [@official@Dotenv package](https://www.npmjs.com/package/dotenv) - [@article@Dotenv tutorial](https://zetcode.com/javascript/dotenv/) - [@article@How to Use Node Environment Variables with a DotEnv File for Node.js and npm](https://www.freecodecamp.org/news/how-to-use-node-environment-variables-with-a-dotenv-file-for-node-js-and-npm/) - [@feed@Explore top posts about General Programming](https://app.daily.dev/tags/general-programming?ref=roadmapsh) diff --git a/src/data/roadmaps/nodejs/content/107-nodejs-apis/104-got.md b/src/data/roadmaps/nodejs/content/107-nodejs-apis/104-got.md index 3b64c1684..42e9e2148 100644 --- a/src/data/roadmaps/nodejs/content/107-nodejs-apis/104-got.md +++ b/src/data/roadmaps/nodejs/content/107-nodejs-apis/104-got.md @@ -4,5 +4,5 @@ Got is a lighter, human-friendly, and powerful HTTP request library explicitly d Visit the following resources to learn more: -- [@article@Official Documentation](https://www.npmjs.com/package/got) +- [@official@Official Documentation](https://www.npmjs.com/package/got) - [@article@How to consume APIs using GOT in Node.js?](https://rapidapi.com/guides/call-apis-got) diff --git a/src/data/roadmaps/nodejs/content/107-nodejs-apis/108-jsonwebtoken.md b/src/data/roadmaps/nodejs/content/107-nodejs-apis/108-jsonwebtoken.md index 6f3439c74..6c00ddcca 100644 --- a/src/data/roadmaps/nodejs/content/107-nodejs-apis/108-jsonwebtoken.md +++ b/src/data/roadmaps/nodejs/content/107-nodejs-apis/108-jsonwebtoken.md @@ -4,6 +4,6 @@ JWT, or JSON-Web-Token, is an open standard for sharing security information bet Visit the following resources to learn more: -- [@article@Package Documentation](https://www.npmjs.com/package/jsonwebtoken) +- [@official@Package Documentation](https://www.npmjs.com/package/jsonwebtoken) - [@article@What is JWT](https://www.akana.com/blog/what-is-jwt) - [@video@JWT Implementation](https://www.youtube.com/watch?v=mbsmsi7l3r4) diff --git a/src/data/roadmaps/nodejs/content/109-nodejs-template-engines/102-ejs.md b/src/data/roadmaps/nodejs/content/109-nodejs-template-engines/102-ejs.md index 4b0c85b80..0a16b296a 100644 --- a/src/data/roadmaps/nodejs/content/109-nodejs-template-engines/102-ejs.md +++ b/src/data/roadmaps/nodejs/content/109-nodejs-template-engines/102-ejs.md @@ -7,7 +7,7 @@ Visit the following resources to learn more: - [@official@Ejs website](https://ejs.co/) - [@official@Ejs Official Documentations](https://ejs.co/#docs) -- [@article@Ejs Official Package](https://www.npmjs.com/package/ejs) +- [@official@Ejs Official Package](https://www.npmjs.com/package/ejs) - [@article@Try EJS Online](https://ionicabizau.github.io/ejs-playground/) - [@article@How to use EJS](https://www.digitalocean.com/community/tutorials/how-to-use-ejs-to-template-your-node-application) - [@article@Step-by-Step EJS Guide](https://codeforgeek.com/ejs-template-engine-in-nodejs/) diff --git a/src/data/roadmaps/nodejs/content/110-nodejs-databases/100-relational/102-sequelize.md b/src/data/roadmaps/nodejs/content/110-nodejs-databases/100-relational/102-sequelize.md index 98b557c28..1c91c7f2a 100644 --- a/src/data/roadmaps/nodejs/content/110-nodejs-databases/100-relational/102-sequelize.md +++ b/src/data/roadmaps/nodejs/content/110-nodejs-databases/100-relational/102-sequelize.md @@ -9,7 +9,7 @@ An ORM is known as Object Relational Mapper. This is a tool or a level of abstra Visit the following resources to learn more: - [@official@Sequelize Website](https://sequelize.org/) -- [@article@Sequelize - NPM Package](https://www.npmjs.com/package/sequelize) +- [@official@Sequelize - NPM Package](https://www.npmjs.com/package/sequelize) - [@official@Official Sequelize Docs](https://sequelize.org/docs/v6/getting-started/) - [@article@Getting started with Sequelize](https://levelup.gitconnected.com/the-ultimate-guide-to-get-started-with-sequelize-orm-238588d3516e) - [@feed@Explore top posts about Node.js](https://app.daily.dev/tags/nodejs?ref=roadmapsh) diff --git a/src/data/roadmaps/nodejs/content/111-nodejs-testing/101-mocha.md b/src/data/roadmaps/nodejs/content/111-nodejs-testing/101-mocha.md index 355f51f75..1e2022243 100644 --- a/src/data/roadmaps/nodejs/content/111-nodejs-testing/101-mocha.md +++ b/src/data/roadmaps/nodejs/content/111-nodejs-testing/101-mocha.md @@ -4,7 +4,7 @@ Mocha is an open source JavaScript test framework running on Nodejs and in the b Visit the following resources to learn more: -- [@article@Official Website](https://www.npmjs.com/package/mocha) +- [@official@Official Website](https://www.npmjs.com/package/mocha) - [@article@Mocha Documentation](https://mochajs.org/) - [@video@Mocha Tutorial](https://youtube.com/playlist?list=PLgbtO1Bcz4C-vU0JLfDBsZGbSUdNX4mQ8) - [@feed@Explore top posts about Testing](https://app.daily.dev/tags/testing?ref=roadmapsh) diff --git a/src/data/roadmaps/nodejs/content/112-nodejs-logging/100-morgan.md b/src/data/roadmaps/nodejs/content/112-nodejs-logging/100-morgan.md index 14d51dd24..bd5270022 100644 --- a/src/data/roadmaps/nodejs/content/112-nodejs-logging/100-morgan.md +++ b/src/data/roadmaps/nodejs/content/112-nodejs-logging/100-morgan.md @@ -4,5 +4,5 @@ Morgan is a NodeJS and express.js middleware to log the HTTP request and error, Visit the following resources to learn more: -- [@article@Official Website](https://www.npmjs.com/package/morgan) +- [@official@Official Website](https://www.npmjs.com/package/morgan) - [@article@How to use Morgan|DigitalOcean](https://www.digitalocean.com/community/tutorials/nodejs-getting-started-morgan) diff --git a/src/data/roadmaps/nodejs/content/113-nodejs-keep-app-running-prod/101-forever.md b/src/data/roadmaps/nodejs/content/113-nodejs-keep-app-running-prod/101-forever.md index f90663f25..c4e5f7bc6 100644 --- a/src/data/roadmaps/nodejs/content/113-nodejs-keep-app-running-prod/101-forever.md +++ b/src/data/roadmaps/nodejs/content/113-nodejs-keep-app-running-prod/101-forever.md @@ -4,4 +4,4 @@ Forever is a node.js package for ensuring that a given script runs continuously Visit the following resources to learn more: -- [@article@Forever package documentation](https://www.npmjs.com/package/forever) +- [@official@Forever package documentation](https://www.npmjs.com/package/forever)