diff --git a/content/roadmaps.json b/content/roadmaps.json
index 8d9eeff29..0db438bb5 100644
--- a/content/roadmaps.json
+++ b/content/roadmaps.json
@@ -446,6 +446,7 @@
"imageUrl": "/roadmaps/nodejs.png",
"jsonUrl": "/project/nodejs.json",
"pdfUrl": "/pdfs/nodejs.pdf",
+ "contentPathsFilePath": "/roadmaps/107-nodejs/content-paths.json",
"id": "nodejs",
"metaPath": "/roadmaps/107-nodejs/meta.json",
"isUpcoming": false
diff --git a/content/roadmaps/107-nodejs/content-paths.json b/content/roadmaps/107-nodejs/content-paths.json
new file mode 100644
index 000000000..7d2f46a70
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content-paths.json
@@ -0,0 +1,120 @@
+{
+ "home": "/roadmaps/107-nodejs/content/readme.md",
+ "nodejs-async-programming": "/roadmaps/107-nodejs/content/104-nodejs-async-programming/readme.md",
+ "nodejs-async-programming:promises": "/roadmaps/107-nodejs/content/104-nodejs-async-programming/102-promises.md",
+ "nodejs-async-programming:async-await": "/roadmaps/107-nodejs/content/104-nodejs-async-programming/103-async-await.md",
+ "nodejs-async-programming:callbacks": "/roadmaps/107-nodejs/content/104-nodejs-async-programming/104-callbacks.md",
+ "nodejs-async-programming:set-timeout": "/roadmaps/107-nodejs/content/104-nodejs-async-programming/105-set-timeout.md",
+ "nodejs-async-programming:set-interval": "/roadmaps/107-nodejs/content/104-nodejs-async-programming/106-set-interval.md",
+ "nodejs-async-programming:set-immediate": "/roadmaps/107-nodejs/content/104-nodejs-async-programming/107-set-immediate.md",
+ "nodejs-async-programming:process-next-tick": "/roadmaps/107-nodejs/content/104-nodejs-async-programming/108-process-next-tick.md",
+ "nodejs-async-programming:event-loop": "/roadmaps/107-nodejs/content/104-nodejs-async-programming/100-event-loop.md",
+ "nodejs-async-programming:event-emitter": "/roadmaps/107-nodejs/content/104-nodejs-async-programming/101-event-emitter.md",
+ "nodejs-introduction": "/roadmaps/107-nodejs/content/100-nodejs-introduction/readme.md",
+ "nodejs-introduction:what-is-nodejs": "/roadmaps/107-nodejs/content/100-nodejs-introduction/100-what-is-nodejs.md",
+ "nodejs-introduction:why-nodejs": "/roadmaps/107-nodejs/content/100-nodejs-introduction/101-why-nodejs.md",
+ "nodejs-introduction:history-of-nodejs": "/roadmaps/107-nodejs/content/100-nodejs-introduction/102-history-of-nodejs.md",
+ "nodejs-introduction:nodejs-vs-browser": "/roadmaps/107-nodejs/content/100-nodejs-introduction/103-nodejs-vs-browser.md",
+ "nodejs-introduction:running-nodejs-code": "/roadmaps/107-nodejs/content/100-nodejs-introduction/104-running-nodejs-code.md",
+ "nodejs-modules": "/roadmaps/107-nodejs/content/101-nodejs-modules/readme.md",
+ "nodejs-modules:commonjs-vs-esm": "/roadmaps/107-nodejs/content/101-nodejs-modules/100-commonjs-vs-esm.md",
+ "nodejs-modules:custom-modules": "/roadmaps/107-nodejs/content/101-nodejs-modules/101-custom-modules.md",
+ "nodejs-modules:global-keyword": "/roadmaps/107-nodejs/content/101-nodejs-modules/102-global-keyword.md",
+ "nodejs-npm": "/roadmaps/107-nodejs/content/102-nodejs-npm/readme.md",
+ "nodejs-npm:npx": "/roadmaps/107-nodejs/content/102-nodejs-npm/100-npx.md",
+ "nodejs-npm:global-install-vs-local-install": "/roadmaps/107-nodejs/content/102-nodejs-npm/101-global-install-vs-local-install.md",
+ "nodejs-npm:updating-packages": "/roadmaps/107-nodejs/content/102-nodejs-npm/102-updating-packages.md",
+ "nodejs-npm:using-packages": "/roadmaps/107-nodejs/content/102-nodejs-npm/103-using-packages.md",
+ "nodejs-npm:running-scripts": "/roadmaps/107-nodejs/content/102-nodejs-npm/104-running-scripts.md",
+ "nodejs-npm:npm-workspaces": "/roadmaps/107-nodejs/content/102-nodejs-npm/105-npm-workspaces.md",
+ "nodejs-npm:creating-packages": "/roadmaps/107-nodejs/content/102-nodejs-npm/106-creating-packages.md",
+ "nodejs-error-handling": "/roadmaps/107-nodejs/content/103-nodejs-error-handling/readme.md",
+ "nodejs-error-handling:stack-trace": "/roadmaps/107-nodejs/content/103-nodejs-error-handling/100-stack-trace.md",
+ "nodejs-error-handling:using-debugger": "/roadmaps/107-nodejs/content/103-nodejs-error-handling/101-using-debugger.md",
+ "nodejs-error-handling:uncaught-exceptions": "/roadmaps/107-nodejs/content/103-nodejs-error-handling/102-uncaught-exceptions.md",
+ "nodejs-error-handling:error-types": "/roadmaps/107-nodejs/content/103-nodejs-error-handling/103-error-types/readme.md",
+ "nodejs-error-handling:error-types:javascript-errors": "/roadmaps/107-nodejs/content/103-nodejs-error-handling/103-error-types/100-javascript-errors.md",
+ "nodejs-error-handling:error-types:system-errors": "/roadmaps/107-nodejs/content/103-nodejs-error-handling/103-error-types/101-system-errors.md",
+ "nodejs-error-handling:error-types:user-specified-errors": "/roadmaps/107-nodejs/content/103-nodejs-error-handling/103-error-types/102-user-specified-errors.md",
+ "nodejs-error-handling:error-types:assertion-errors": "/roadmaps/107-nodejs/content/103-nodejs-error-handling/103-error-types/103-assertion-errors.md",
+ "nodejs-error-handling:async-errors": "/roadmaps/107-nodejs/content/103-nodejs-error-handling/104-async-errors.md",
+ "nodejs-working-with-files": "/roadmaps/107-nodejs/content/105-nodejs-working-with-files/readme.md",
+ "nodejs-working-with-files:fs-module": "/roadmaps/107-nodejs/content/105-nodejs-working-with-files/100-fs-module.md",
+ "nodejs-working-with-files:path-module": "/roadmaps/107-nodejs/content/105-nodejs-working-with-files/101-path-module.md",
+ "nodejs-working-with-files:process-cwd": "/roadmaps/107-nodejs/content/105-nodejs-working-with-files/102-process-cwd.md",
+ "nodejs-working-with-files:glob": "/roadmaps/107-nodejs/content/105-nodejs-working-with-files/103-glob.md",
+ "nodejs-working-with-files:globby": "/roadmaps/107-nodejs/content/105-nodejs-working-with-files/104-globby.md",
+ "nodejs-working-with-files:fs-extra": "/roadmaps/107-nodejs/content/105-nodejs-working-with-files/105-fs-extra.md",
+ "nodejs-working-with-files:chokidar": "/roadmaps/107-nodejs/content/105-nodejs-working-with-files/106-chokidar.md",
+ "nodejs-working-with-files:dirname": "/roadmaps/107-nodejs/content/105-nodejs-working-with-files/107-dirname.md",
+ "nodejs-working-with-files:filename": "/roadmaps/107-nodejs/content/105-nodejs-working-with-files/108-filename.md",
+ "nodejs-command-line-apps": "/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/readme.md",
+ "nodejs-command-line-apps:exitting-and-exit-codes": "/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/100-exitting-and-exit-codes.md",
+ "nodejs-command-line-apps:printing-output": "/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/101-printing-output/readme.md",
+ "nodejs-command-line-apps:printing-output:process-stdout": "/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/101-printing-output/100-process-stdout.md",
+ "nodejs-command-line-apps:printing-output:process-stderr": "/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/101-printing-output/101-process-stderr.md",
+ "nodejs-command-line-apps:printing-output:chalk": "/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/101-printing-output/102-chalk.md",
+ "nodejs-command-line-apps:printing-output:figlet": "/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/101-printing-output/103-figlet.md",
+ "nodejs-command-line-apps:printing-output:cli-progress": "/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/101-printing-output/104-cli-progress.md",
+ "nodejs-command-line-apps:taking-input": "/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/102-taking-input/readme.md",
+ "nodejs-command-line-apps:taking-input:process-stdin": "/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/102-taking-input/100-process-stdin.md",
+ "nodejs-command-line-apps:taking-input:prompts": "/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/102-taking-input/101-prompts.md",
+ "nodejs-command-line-apps:taking-input:inquirer": "/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/102-taking-input/102-inquirer.md",
+ "nodejs-command-line-apps:command-line-args": "/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/103-command-line-args/readme.md",
+ "nodejs-command-line-apps:command-line-args:process-argv": "/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/103-command-line-args/100-process-argv.md",
+ "nodejs-command-line-apps:command-line-args:commander-js": "/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/103-command-line-args/101-commander-js.md",
+ "nodejs-command-line-apps:environment-variables": "/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/104-environment-variables/readme.md",
+ "nodejs-command-line-apps:environment-variables:dotenv": "/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/104-environment-variables/100-dotenv.md",
+ "nodejs-command-line-apps:environment-variables:process-env": "/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/104-environment-variables/101-process-env.md",
+ "nodejs-apis": "/roadmaps/107-nodejs/content/107-nodejs-apis/readme.md",
+ "nodejs-apis:http-module": "/roadmaps/107-nodejs/content/107-nodejs-apis/100-http-module.md",
+ "nodejs-apis:express-js": "/roadmaps/107-nodejs/content/107-nodejs-apis/101-express-js.md",
+ "nodejs-apis:nest-js": "/roadmaps/107-nodejs/content/107-nodejs-apis/102-nest-js.md",
+ "nodejs-apis:fastify": "/roadmaps/107-nodejs/content/107-nodejs-apis/103-fastify.md",
+ "nodejs-apis:got": "/roadmaps/107-nodejs/content/107-nodejs-apis/104-got.md",
+ "nodejs-apis:unfetch": "/roadmaps/107-nodejs/content/107-nodejs-apis/105-unfetch.md",
+ "nodejs-apis:axios": "/roadmaps/107-nodejs/content/107-nodejs-apis/106-axios.md",
+ "nodejs-apis:api-calls-http": "/roadmaps/107-nodejs/content/107-nodejs-apis/107-api-calls-http.md",
+ "nodejs-apis:jsonwebtoken": "/roadmaps/107-nodejs/content/107-nodejs-apis/108-jsonwebtoken.md",
+ "nodejs-apis:passport-js": "/roadmaps/107-nodejs/content/107-nodejs-apis/109-passport-js.md",
+ "nodejs-keep-app-running": "/roadmaps/107-nodejs/content/108-nodejs-keep-app-running/readme.md",
+ "nodejs-keep-app-running:nodemon": "/roadmaps/107-nodejs/content/108-nodejs-keep-app-running/100-nodemon.md",
+ "nodejs-template-engines": "/roadmaps/107-nodejs/content/109-nodejs-template-engines/readme.md",
+ "nodejs-template-engines:marko": "/roadmaps/107-nodejs/content/109-nodejs-template-engines/100-marko.md",
+ "nodejs-template-engines:pug": "/roadmaps/107-nodejs/content/109-nodejs-template-engines/101-pug.md",
+ "nodejs-template-engines:ejs": "/roadmaps/107-nodejs/content/109-nodejs-template-engines/102-ejs.md",
+ "nodejs-databases": "/roadmaps/107-nodejs/content/110-nodejs-databases/readme.md",
+ "nodejs-databases:relational": "/roadmaps/107-nodejs/content/110-nodejs-databases/100-relational/readme.md",
+ "nodejs-databases:relational:knex": "/roadmaps/107-nodejs/content/110-nodejs-databases/100-relational/100-knex.md",
+ "nodejs-databases:relational:type-orm": "/roadmaps/107-nodejs/content/110-nodejs-databases/100-relational/101-type-orm.md",
+ "nodejs-databases:relational:sequelize": "/roadmaps/107-nodejs/content/110-nodejs-databases/100-relational/102-sequelize.md",
+ "nodejs-databases:relational:prisma": "/roadmaps/107-nodejs/content/110-nodejs-databases/100-relational/103-prisma.md",
+ "nodejs-databases:relational:native-drivers": "/roadmaps/107-nodejs/content/110-nodejs-databases/100-relational/104-native-drivers.md",
+ "nodejs-databases:document": "/roadmaps/107-nodejs/content/110-nodejs-databases/101-document/readme.md",
+ "nodejs-databases:document:mongoose": "/roadmaps/107-nodejs/content/110-nodejs-databases/101-document/100-mongoose.md",
+ "nodejs-databases:document:prisma": "/roadmaps/107-nodejs/content/110-nodejs-databases/101-document/101-prisma.md",
+ "nodejs-databases:document:native-drivers": "/roadmaps/107-nodejs/content/110-nodejs-databases/101-document/102-native-drivers.md",
+ "nodejs-testing": "/roadmaps/107-nodejs/content/111-nodejs-testing/readme.md",
+ "nodejs-testing:jest": "/roadmaps/107-nodejs/content/111-nodejs-testing/100-jest.md",
+ "nodejs-testing:mocha": "/roadmaps/107-nodejs/content/111-nodejs-testing/101-mocha.md",
+ "nodejs-testing:cypress": "/roadmaps/107-nodejs/content/111-nodejs-testing/102-cypress.md",
+ "nodejs-logging": "/roadmaps/107-nodejs/content/112-nodejs-logging/readme.md",
+ "nodejs-logging:morgan": "/roadmaps/107-nodejs/content/112-nodejs-logging/100-morgan.md",
+ "nodejs-logging:winston": "/roadmaps/107-nodejs/content/112-nodejs-logging/101-winston.md",
+ "nodejs-keep-app-running-prod": "/roadmaps/107-nodejs/content/113-nodejs-keep-app-running-prod/readme.md",
+ "nodejs-keep-app-running-prod:pm2": "/roadmaps/107-nodejs/content/113-nodejs-keep-app-running-prod/100-pm2.md",
+ "nodejs-keep-app-running-prod:forever": "/roadmaps/107-nodejs/content/113-nodejs-keep-app-running-prod/101-forever.md",
+ "nodejs-keep-app-running-prod:nohup": "/roadmaps/107-nodejs/content/113-nodejs-keep-app-running-prod/102-nohup.md",
+ "nodejs-threads": "/roadmaps/107-nodejs/content/114-nodejs-threads/readme.md",
+ "nodejs-threads:child-process": "/roadmaps/107-nodejs/content/114-nodejs-threads/100-child-process.md",
+ "nodejs-threads:cluster": "/roadmaps/107-nodejs/content/114-nodejs-threads/101-cluster.md",
+ "nodejs-threads:worker-threads": "/roadmaps/107-nodejs/content/114-nodejs-threads/102-worker-threads.md",
+ "nodejs-streams": "/roadmaps/107-nodejs/content/115-nodejs-streams.md",
+ "nodejs-more-debugging": "/roadmaps/107-nodejs/content/116-nodejs-more-debugging/readme.md",
+ "nodejs-more-debugging:memory-leaks": "/roadmaps/107-nodejs/content/116-nodejs-more-debugging/100-memory-leaks/readme.md",
+ "nodejs-more-debugging:memory-leaks:garbage-collection": "/roadmaps/107-nodejs/content/116-nodejs-more-debugging/100-memory-leaks/100-garbage-collection.md",
+ "nodejs-more-debugging:node-inspect": "/roadmaps/107-nodejs/content/116-nodejs-more-debugging/101-node-inspect.md",
+ "nodejs-more-debugging:using-apm": "/roadmaps/107-nodejs/content/116-nodejs-more-debugging/102-using-apm.md",
+ "nodejs-common-modules": "/roadmaps/107-nodejs/content/117-nodejs-common-modules/readme.md",
+ "nodejs-common-modules:builtin-modules": "/roadmaps/107-nodejs/content/117-nodejs-common-modules/100-builtin-modules.md"
+}
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/100-nodejs-introduction/100-what-is-nodejs.md b/content/roadmaps/107-nodejs/content/100-nodejs-introduction/100-what-is-nodejs.md
new file mode 100644
index 000000000..79dc3253b
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/100-nodejs-introduction/100-what-is-nodejs.md
@@ -0,0 +1 @@
+# What is nodejs
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/100-nodejs-introduction/101-why-nodejs.md b/content/roadmaps/107-nodejs/content/100-nodejs-introduction/101-why-nodejs.md
new file mode 100644
index 000000000..24481f91e
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/100-nodejs-introduction/101-why-nodejs.md
@@ -0,0 +1 @@
+# Why nodejs
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/100-nodejs-introduction/102-history-of-nodejs.md b/content/roadmaps/107-nodejs/content/100-nodejs-introduction/102-history-of-nodejs.md
new file mode 100644
index 000000000..cad79c620
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/100-nodejs-introduction/102-history-of-nodejs.md
@@ -0,0 +1 @@
+# History of nodejs
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/100-nodejs-introduction/103-nodejs-vs-browser.md b/content/roadmaps/107-nodejs/content/100-nodejs-introduction/103-nodejs-vs-browser.md
new file mode 100644
index 000000000..3d3779192
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/100-nodejs-introduction/103-nodejs-vs-browser.md
@@ -0,0 +1 @@
+# Nodejs vs browser
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/100-nodejs-introduction/104-running-nodejs-code.md b/content/roadmaps/107-nodejs/content/100-nodejs-introduction/104-running-nodejs-code.md
new file mode 100644
index 000000000..0a69ae77c
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/100-nodejs-introduction/104-running-nodejs-code.md
@@ -0,0 +1 @@
+# Running nodejs code
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/100-nodejs-introduction/readme.md b/content/roadmaps/107-nodejs/content/100-nodejs-introduction/readme.md
new file mode 100644
index 000000000..0da5e086c
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/100-nodejs-introduction/readme.md
@@ -0,0 +1 @@
+# Nodejs introduction
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/101-nodejs-modules/100-commonjs-vs-esm.md b/content/roadmaps/107-nodejs/content/101-nodejs-modules/100-commonjs-vs-esm.md
new file mode 100644
index 000000000..8e8b15f00
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/101-nodejs-modules/100-commonjs-vs-esm.md
@@ -0,0 +1 @@
+# Commonjs vs esm
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/101-nodejs-modules/101-custom-modules.md b/content/roadmaps/107-nodejs/content/101-nodejs-modules/101-custom-modules.md
new file mode 100644
index 000000000..bd623107f
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/101-nodejs-modules/101-custom-modules.md
@@ -0,0 +1 @@
+# Custom modules
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/101-nodejs-modules/102-global-keyword.md b/content/roadmaps/107-nodejs/content/101-nodejs-modules/102-global-keyword.md
new file mode 100644
index 000000000..5edcdbfdc
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/101-nodejs-modules/102-global-keyword.md
@@ -0,0 +1 @@
+# Global keyword
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/101-nodejs-modules/readme.md b/content/roadmaps/107-nodejs/content/101-nodejs-modules/readme.md
new file mode 100644
index 000000000..1370de98b
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/101-nodejs-modules/readme.md
@@ -0,0 +1 @@
+# Nodejs modules
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/102-nodejs-npm/100-npx.md b/content/roadmaps/107-nodejs/content/102-nodejs-npm/100-npx.md
new file mode 100644
index 000000000..947d60102
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/102-nodejs-npm/100-npx.md
@@ -0,0 +1 @@
+# Npx
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/102-nodejs-npm/101-global-install-vs-local-install.md b/content/roadmaps/107-nodejs/content/102-nodejs-npm/101-global-install-vs-local-install.md
new file mode 100644
index 000000000..2280b5bd9
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/102-nodejs-npm/101-global-install-vs-local-install.md
@@ -0,0 +1 @@
+# Global install vs local install
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/102-nodejs-npm/102-updating-packages.md b/content/roadmaps/107-nodejs/content/102-nodejs-npm/102-updating-packages.md
new file mode 100644
index 000000000..addfa442f
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/102-nodejs-npm/102-updating-packages.md
@@ -0,0 +1 @@
+# Updating packages
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/102-nodejs-npm/103-using-packages.md b/content/roadmaps/107-nodejs/content/102-nodejs-npm/103-using-packages.md
new file mode 100644
index 000000000..5c7ce5a7b
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/102-nodejs-npm/103-using-packages.md
@@ -0,0 +1 @@
+# Using packages
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/102-nodejs-npm/104-running-scripts.md b/content/roadmaps/107-nodejs/content/102-nodejs-npm/104-running-scripts.md
new file mode 100644
index 000000000..e2e90601c
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/102-nodejs-npm/104-running-scripts.md
@@ -0,0 +1 @@
+# Running scripts
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/102-nodejs-npm/105-npm-workspaces.md b/content/roadmaps/107-nodejs/content/102-nodejs-npm/105-npm-workspaces.md
new file mode 100644
index 000000000..50afa3304
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/102-nodejs-npm/105-npm-workspaces.md
@@ -0,0 +1 @@
+# Npm workspaces
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/102-nodejs-npm/106-creating-packages.md b/content/roadmaps/107-nodejs/content/102-nodejs-npm/106-creating-packages.md
new file mode 100644
index 000000000..d66f08388
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/102-nodejs-npm/106-creating-packages.md
@@ -0,0 +1 @@
+# Creating packages
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/102-nodejs-npm/readme.md b/content/roadmaps/107-nodejs/content/102-nodejs-npm/readme.md
new file mode 100644
index 000000000..9a32104a5
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/102-nodejs-npm/readme.md
@@ -0,0 +1 @@
+# Nodejs npm
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/103-nodejs-error-handling/100-stack-trace.md b/content/roadmaps/107-nodejs/content/103-nodejs-error-handling/100-stack-trace.md
new file mode 100644
index 000000000..1a4844dee
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/103-nodejs-error-handling/100-stack-trace.md
@@ -0,0 +1 @@
+# Stack trace
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/103-nodejs-error-handling/101-using-debugger.md b/content/roadmaps/107-nodejs/content/103-nodejs-error-handling/101-using-debugger.md
new file mode 100644
index 000000000..157f5eb9d
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/103-nodejs-error-handling/101-using-debugger.md
@@ -0,0 +1 @@
+# Using debugger
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/103-nodejs-error-handling/102-uncaught-exceptions.md b/content/roadmaps/107-nodejs/content/103-nodejs-error-handling/102-uncaught-exceptions.md
new file mode 100644
index 000000000..40e8bcfc6
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/103-nodejs-error-handling/102-uncaught-exceptions.md
@@ -0,0 +1 @@
+# Uncaught exceptions
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/103-nodejs-error-handling/103-error-types/100-javascript-errors.md b/content/roadmaps/107-nodejs/content/103-nodejs-error-handling/103-error-types/100-javascript-errors.md
new file mode 100644
index 000000000..3802e16c9
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/103-nodejs-error-handling/103-error-types/100-javascript-errors.md
@@ -0,0 +1 @@
+# Javascript errors
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/103-nodejs-error-handling/103-error-types/101-system-errors.md b/content/roadmaps/107-nodejs/content/103-nodejs-error-handling/103-error-types/101-system-errors.md
new file mode 100644
index 000000000..cb61c63d5
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/103-nodejs-error-handling/103-error-types/101-system-errors.md
@@ -0,0 +1 @@
+# System errors
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/103-nodejs-error-handling/103-error-types/102-user-specified-errors.md b/content/roadmaps/107-nodejs/content/103-nodejs-error-handling/103-error-types/102-user-specified-errors.md
new file mode 100644
index 000000000..e4572db98
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/103-nodejs-error-handling/103-error-types/102-user-specified-errors.md
@@ -0,0 +1 @@
+# User specified errors
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/103-nodejs-error-handling/103-error-types/103-assertion-errors.md b/content/roadmaps/107-nodejs/content/103-nodejs-error-handling/103-error-types/103-assertion-errors.md
new file mode 100644
index 000000000..75f461b4d
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/103-nodejs-error-handling/103-error-types/103-assertion-errors.md
@@ -0,0 +1 @@
+# Assertion errors
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/103-nodejs-error-handling/103-error-types/readme.md b/content/roadmaps/107-nodejs/content/103-nodejs-error-handling/103-error-types/readme.md
new file mode 100644
index 000000000..6e8c94cf1
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/103-nodejs-error-handling/103-error-types/readme.md
@@ -0,0 +1 @@
+# Error types
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/103-nodejs-error-handling/104-async-errors.md b/content/roadmaps/107-nodejs/content/103-nodejs-error-handling/104-async-errors.md
new file mode 100644
index 000000000..af35a107f
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/103-nodejs-error-handling/104-async-errors.md
@@ -0,0 +1 @@
+# Async errors
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/103-nodejs-error-handling/readme.md b/content/roadmaps/107-nodejs/content/103-nodejs-error-handling/readme.md
new file mode 100644
index 000000000..7946c11ab
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/103-nodejs-error-handling/readme.md
@@ -0,0 +1 @@
+# Nodejs error handling
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/104-nodejs-async-programming/100-event-loop.md b/content/roadmaps/107-nodejs/content/104-nodejs-async-programming/100-event-loop.md
new file mode 100644
index 000000000..21a9c2c1e
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/104-nodejs-async-programming/100-event-loop.md
@@ -0,0 +1 @@
+# Event loop
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/104-nodejs-async-programming/101-event-emitter.md b/content/roadmaps/107-nodejs/content/104-nodejs-async-programming/101-event-emitter.md
new file mode 100644
index 000000000..8cac7ce31
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/104-nodejs-async-programming/101-event-emitter.md
@@ -0,0 +1 @@
+# Event emitter
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/104-nodejs-async-programming/102-promises.md b/content/roadmaps/107-nodejs/content/104-nodejs-async-programming/102-promises.md
new file mode 100644
index 000000000..0554eea0f
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/104-nodejs-async-programming/102-promises.md
@@ -0,0 +1 @@
+# Promises
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/104-nodejs-async-programming/103-async-await.md b/content/roadmaps/107-nodejs/content/104-nodejs-async-programming/103-async-await.md
new file mode 100644
index 000000000..b0197a63d
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/104-nodejs-async-programming/103-async-await.md
@@ -0,0 +1 @@
+# Async await
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/104-nodejs-async-programming/104-callbacks.md b/content/roadmaps/107-nodejs/content/104-nodejs-async-programming/104-callbacks.md
new file mode 100644
index 000000000..7b3d81c5f
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/104-nodejs-async-programming/104-callbacks.md
@@ -0,0 +1 @@
+# Callbacks
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/104-nodejs-async-programming/105-set-timeout.md b/content/roadmaps/107-nodejs/content/104-nodejs-async-programming/105-set-timeout.md
new file mode 100644
index 000000000..feb47434e
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/104-nodejs-async-programming/105-set-timeout.md
@@ -0,0 +1 @@
+# Set timeout
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/104-nodejs-async-programming/106-set-interval.md b/content/roadmaps/107-nodejs/content/104-nodejs-async-programming/106-set-interval.md
new file mode 100644
index 000000000..e86046842
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/104-nodejs-async-programming/106-set-interval.md
@@ -0,0 +1 @@
+# Set interval
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/104-nodejs-async-programming/107-set-immediate.md b/content/roadmaps/107-nodejs/content/104-nodejs-async-programming/107-set-immediate.md
new file mode 100644
index 000000000..e951a60ab
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/104-nodejs-async-programming/107-set-immediate.md
@@ -0,0 +1 @@
+# Set immediate
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/104-nodejs-async-programming/108-process-next-tick.md b/content/roadmaps/107-nodejs/content/104-nodejs-async-programming/108-process-next-tick.md
new file mode 100644
index 000000000..6887c7b9b
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/104-nodejs-async-programming/108-process-next-tick.md
@@ -0,0 +1 @@
+# Process next tick
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/104-nodejs-async-programming/readme.md b/content/roadmaps/107-nodejs/content/104-nodejs-async-programming/readme.md
new file mode 100644
index 000000000..25a643f41
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/104-nodejs-async-programming/readme.md
@@ -0,0 +1 @@
+# Nodejs async programming
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/105-nodejs-working-with-files/100-fs-module.md b/content/roadmaps/107-nodejs/content/105-nodejs-working-with-files/100-fs-module.md
new file mode 100644
index 000000000..416872b50
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/105-nodejs-working-with-files/100-fs-module.md
@@ -0,0 +1 @@
+# Fs module
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/105-nodejs-working-with-files/101-path-module.md b/content/roadmaps/107-nodejs/content/105-nodejs-working-with-files/101-path-module.md
new file mode 100644
index 000000000..195fc7c40
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/105-nodejs-working-with-files/101-path-module.md
@@ -0,0 +1 @@
+# Path module
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/105-nodejs-working-with-files/102-process-cwd.md b/content/roadmaps/107-nodejs/content/105-nodejs-working-with-files/102-process-cwd.md
new file mode 100644
index 000000000..1140e2200
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/105-nodejs-working-with-files/102-process-cwd.md
@@ -0,0 +1 @@
+# Process cwd
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/105-nodejs-working-with-files/103-glob.md b/content/roadmaps/107-nodejs/content/105-nodejs-working-with-files/103-glob.md
new file mode 100644
index 000000000..c9f6a854f
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/105-nodejs-working-with-files/103-glob.md
@@ -0,0 +1 @@
+# Glob
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/105-nodejs-working-with-files/104-globby.md b/content/roadmaps/107-nodejs/content/105-nodejs-working-with-files/104-globby.md
new file mode 100644
index 000000000..30fd834bd
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/105-nodejs-working-with-files/104-globby.md
@@ -0,0 +1 @@
+# Globby
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/105-nodejs-working-with-files/105-fs-extra.md b/content/roadmaps/107-nodejs/content/105-nodejs-working-with-files/105-fs-extra.md
new file mode 100644
index 000000000..fb9cefa44
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/105-nodejs-working-with-files/105-fs-extra.md
@@ -0,0 +1 @@
+# Fs extra
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/105-nodejs-working-with-files/106-chokidar.md b/content/roadmaps/107-nodejs/content/105-nodejs-working-with-files/106-chokidar.md
new file mode 100644
index 000000000..ff1841435
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/105-nodejs-working-with-files/106-chokidar.md
@@ -0,0 +1 @@
+# Chokidar
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/105-nodejs-working-with-files/107-dirname.md b/content/roadmaps/107-nodejs/content/105-nodejs-working-with-files/107-dirname.md
new file mode 100644
index 000000000..af30af200
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/105-nodejs-working-with-files/107-dirname.md
@@ -0,0 +1 @@
+# Dirname
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/105-nodejs-working-with-files/108-filename.md b/content/roadmaps/107-nodejs/content/105-nodejs-working-with-files/108-filename.md
new file mode 100644
index 000000000..bb51b1d73
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/105-nodejs-working-with-files/108-filename.md
@@ -0,0 +1 @@
+# Filename
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/105-nodejs-working-with-files/readme.md b/content/roadmaps/107-nodejs/content/105-nodejs-working-with-files/readme.md
new file mode 100644
index 000000000..cfae3fb26
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/105-nodejs-working-with-files/readme.md
@@ -0,0 +1 @@
+# Nodejs working with files
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/100-exitting-and-exit-codes.md b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/100-exitting-and-exit-codes.md
new file mode 100644
index 000000000..1a24b6055
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/100-exitting-and-exit-codes.md
@@ -0,0 +1 @@
+# Exitting and exit codes
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/101-printing-output/100-process-stdout.md b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/101-printing-output/100-process-stdout.md
new file mode 100644
index 000000000..4b92ede98
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/101-printing-output/100-process-stdout.md
@@ -0,0 +1 @@
+# Process stdout
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/101-printing-output/101-process-stderr.md b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/101-printing-output/101-process-stderr.md
new file mode 100644
index 000000000..a2c158a74
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/101-printing-output/101-process-stderr.md
@@ -0,0 +1 @@
+# Process stderr
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/101-printing-output/102-chalk.md b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/101-printing-output/102-chalk.md
new file mode 100644
index 000000000..115924e61
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/101-printing-output/102-chalk.md
@@ -0,0 +1 @@
+# Chalk
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/101-printing-output/103-figlet.md b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/101-printing-output/103-figlet.md
new file mode 100644
index 000000000..c3d78808a
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/101-printing-output/103-figlet.md
@@ -0,0 +1 @@
+# Figlet
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/101-printing-output/104-cli-progress.md b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/101-printing-output/104-cli-progress.md
new file mode 100644
index 000000000..ce4c933e6
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/101-printing-output/104-cli-progress.md
@@ -0,0 +1 @@
+# Cli progress
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/101-printing-output/readme.md b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/101-printing-output/readme.md
new file mode 100644
index 000000000..4b6d5a0aa
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/101-printing-output/readme.md
@@ -0,0 +1 @@
+# Printing output
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/102-taking-input/100-process-stdin.md b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/102-taking-input/100-process-stdin.md
new file mode 100644
index 000000000..0d970dfa3
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/102-taking-input/100-process-stdin.md
@@ -0,0 +1 @@
+# Process stdin
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/102-taking-input/101-prompts.md b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/102-taking-input/101-prompts.md
new file mode 100644
index 000000000..3010b0341
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/102-taking-input/101-prompts.md
@@ -0,0 +1 @@
+# Prompts
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/102-taking-input/102-inquirer.md b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/102-taking-input/102-inquirer.md
new file mode 100644
index 000000000..20d695460
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/102-taking-input/102-inquirer.md
@@ -0,0 +1 @@
+# Inquirer
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/102-taking-input/readme.md b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/102-taking-input/readme.md
new file mode 100644
index 000000000..8fde021b3
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/102-taking-input/readme.md
@@ -0,0 +1 @@
+# Taking input
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/103-command-line-args/100-process-argv.md b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/103-command-line-args/100-process-argv.md
new file mode 100644
index 000000000..db23d1ced
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/103-command-line-args/100-process-argv.md
@@ -0,0 +1 @@
+# Process argv
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/103-command-line-args/101-commander-js.md b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/103-command-line-args/101-commander-js.md
new file mode 100644
index 000000000..4cd6fdbee
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/103-command-line-args/101-commander-js.md
@@ -0,0 +1 @@
+# Commander js
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/103-command-line-args/readme.md b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/103-command-line-args/readme.md
new file mode 100644
index 000000000..ffa6a5b03
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/103-command-line-args/readme.md
@@ -0,0 +1 @@
+# Command line args
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/104-environment-variables/100-dotenv.md b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/104-environment-variables/100-dotenv.md
new file mode 100644
index 000000000..529755706
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/104-environment-variables/100-dotenv.md
@@ -0,0 +1 @@
+# Dotenv
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/104-environment-variables/101-process-env.md b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/104-environment-variables/101-process-env.md
new file mode 100644
index 000000000..6beec3a92
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/104-environment-variables/101-process-env.md
@@ -0,0 +1 @@
+# Process env
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/104-environment-variables/readme.md b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/104-environment-variables/readme.md
new file mode 100644
index 000000000..4f958fbd4
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/104-environment-variables/readme.md
@@ -0,0 +1 @@
+# Environment variables
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/readme.md b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/readme.md
new file mode 100644
index 000000000..456717274
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/106-nodejs-command-line-apps/readme.md
@@ -0,0 +1 @@
+# Nodejs command line apps
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/107-nodejs-apis/100-http-module.md b/content/roadmaps/107-nodejs/content/107-nodejs-apis/100-http-module.md
new file mode 100644
index 000000000..7e4d4fec0
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/107-nodejs-apis/100-http-module.md
@@ -0,0 +1 @@
+# Http module
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/107-nodejs-apis/101-express-js.md b/content/roadmaps/107-nodejs/content/107-nodejs-apis/101-express-js.md
new file mode 100644
index 000000000..e61b74e4a
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/107-nodejs-apis/101-express-js.md
@@ -0,0 +1 @@
+# Express js
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/107-nodejs-apis/102-nest-js.md b/content/roadmaps/107-nodejs/content/107-nodejs-apis/102-nest-js.md
new file mode 100644
index 000000000..08e1233f4
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/107-nodejs-apis/102-nest-js.md
@@ -0,0 +1 @@
+# Nest js
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/107-nodejs-apis/103-fastify.md b/content/roadmaps/107-nodejs/content/107-nodejs-apis/103-fastify.md
new file mode 100644
index 000000000..e9f203aa6
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/107-nodejs-apis/103-fastify.md
@@ -0,0 +1 @@
+# Fastify
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/107-nodejs-apis/104-got.md b/content/roadmaps/107-nodejs/content/107-nodejs-apis/104-got.md
new file mode 100644
index 000000000..e8327dfc7
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/107-nodejs-apis/104-got.md
@@ -0,0 +1 @@
+# Got
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/107-nodejs-apis/105-unfetch.md b/content/roadmaps/107-nodejs/content/107-nodejs-apis/105-unfetch.md
new file mode 100644
index 000000000..417376dc6
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/107-nodejs-apis/105-unfetch.md
@@ -0,0 +1 @@
+# Unfetch
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/107-nodejs-apis/106-axios.md b/content/roadmaps/107-nodejs/content/107-nodejs-apis/106-axios.md
new file mode 100644
index 000000000..fd41e81cf
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/107-nodejs-apis/106-axios.md
@@ -0,0 +1 @@
+# Axios
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/107-nodejs-apis/107-api-calls-http.md b/content/roadmaps/107-nodejs/content/107-nodejs-apis/107-api-calls-http.md
new file mode 100644
index 000000000..990de55b1
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/107-nodejs-apis/107-api-calls-http.md
@@ -0,0 +1 @@
+# Api calls http
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/107-nodejs-apis/108-jsonwebtoken.md b/content/roadmaps/107-nodejs/content/107-nodejs-apis/108-jsonwebtoken.md
new file mode 100644
index 000000000..0c68c0603
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/107-nodejs-apis/108-jsonwebtoken.md
@@ -0,0 +1 @@
+# Jsonwebtoken
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/107-nodejs-apis/109-passport-js.md b/content/roadmaps/107-nodejs/content/107-nodejs-apis/109-passport-js.md
new file mode 100644
index 000000000..164370e97
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/107-nodejs-apis/109-passport-js.md
@@ -0,0 +1 @@
+# Passport js
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/107-nodejs-apis/readme.md b/content/roadmaps/107-nodejs/content/107-nodejs-apis/readme.md
new file mode 100644
index 000000000..ba8cf6b64
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/107-nodejs-apis/readme.md
@@ -0,0 +1 @@
+# Nodejs apis
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/108-nodejs-keep-app-running/100-nodemon.md b/content/roadmaps/107-nodejs/content/108-nodejs-keep-app-running/100-nodemon.md
new file mode 100644
index 000000000..17551021e
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/108-nodejs-keep-app-running/100-nodemon.md
@@ -0,0 +1 @@
+# Nodemon
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/108-nodejs-keep-app-running/readme.md b/content/roadmaps/107-nodejs/content/108-nodejs-keep-app-running/readme.md
new file mode 100644
index 000000000..0ba93171a
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/108-nodejs-keep-app-running/readme.md
@@ -0,0 +1 @@
+# Nodejs keep app running
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/109-nodejs-template-engines/100-marko.md b/content/roadmaps/107-nodejs/content/109-nodejs-template-engines/100-marko.md
new file mode 100644
index 000000000..f4b90300d
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/109-nodejs-template-engines/100-marko.md
@@ -0,0 +1 @@
+# Marko
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/109-nodejs-template-engines/101-pug.md b/content/roadmaps/107-nodejs/content/109-nodejs-template-engines/101-pug.md
new file mode 100644
index 000000000..430e9b8e4
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/109-nodejs-template-engines/101-pug.md
@@ -0,0 +1 @@
+# Pug
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/109-nodejs-template-engines/102-ejs.md b/content/roadmaps/107-nodejs/content/109-nodejs-template-engines/102-ejs.md
new file mode 100644
index 000000000..238abd527
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/109-nodejs-template-engines/102-ejs.md
@@ -0,0 +1 @@
+# Ejs
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/109-nodejs-template-engines/readme.md b/content/roadmaps/107-nodejs/content/109-nodejs-template-engines/readme.md
new file mode 100644
index 000000000..636c4d345
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/109-nodejs-template-engines/readme.md
@@ -0,0 +1 @@
+# Nodejs template engines
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/110-nodejs-databases/100-relational/100-knex.md b/content/roadmaps/107-nodejs/content/110-nodejs-databases/100-relational/100-knex.md
new file mode 100644
index 000000000..feb8c9204
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/110-nodejs-databases/100-relational/100-knex.md
@@ -0,0 +1 @@
+# Knex
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/110-nodejs-databases/100-relational/101-type-orm.md b/content/roadmaps/107-nodejs/content/110-nodejs-databases/100-relational/101-type-orm.md
new file mode 100644
index 000000000..b7ed73d94
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/110-nodejs-databases/100-relational/101-type-orm.md
@@ -0,0 +1 @@
+# Type orm
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/110-nodejs-databases/100-relational/102-sequelize.md b/content/roadmaps/107-nodejs/content/110-nodejs-databases/100-relational/102-sequelize.md
new file mode 100644
index 000000000..1e6b8b02a
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/110-nodejs-databases/100-relational/102-sequelize.md
@@ -0,0 +1 @@
+# Sequelize
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/110-nodejs-databases/100-relational/103-prisma.md b/content/roadmaps/107-nodejs/content/110-nodejs-databases/100-relational/103-prisma.md
new file mode 100644
index 000000000..7b169bebf
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/110-nodejs-databases/100-relational/103-prisma.md
@@ -0,0 +1 @@
+# Prisma
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/110-nodejs-databases/100-relational/104-native-drivers.md b/content/roadmaps/107-nodejs/content/110-nodejs-databases/100-relational/104-native-drivers.md
new file mode 100644
index 000000000..56ed4e085
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/110-nodejs-databases/100-relational/104-native-drivers.md
@@ -0,0 +1 @@
+# Native drivers
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/110-nodejs-databases/100-relational/readme.md b/content/roadmaps/107-nodejs/content/110-nodejs-databases/100-relational/readme.md
new file mode 100644
index 000000000..e6a7c3178
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/110-nodejs-databases/100-relational/readme.md
@@ -0,0 +1 @@
+# Relational
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/110-nodejs-databases/101-document/100-mongoose.md b/content/roadmaps/107-nodejs/content/110-nodejs-databases/101-document/100-mongoose.md
new file mode 100644
index 000000000..a1e1e4d8a
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/110-nodejs-databases/101-document/100-mongoose.md
@@ -0,0 +1 @@
+# Mongoose
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/110-nodejs-databases/101-document/101-prisma.md b/content/roadmaps/107-nodejs/content/110-nodejs-databases/101-document/101-prisma.md
new file mode 100644
index 000000000..7b169bebf
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/110-nodejs-databases/101-document/101-prisma.md
@@ -0,0 +1 @@
+# Prisma
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/110-nodejs-databases/101-document/102-native-drivers.md b/content/roadmaps/107-nodejs/content/110-nodejs-databases/101-document/102-native-drivers.md
new file mode 100644
index 000000000..56ed4e085
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/110-nodejs-databases/101-document/102-native-drivers.md
@@ -0,0 +1 @@
+# Native drivers
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/110-nodejs-databases/101-document/readme.md b/content/roadmaps/107-nodejs/content/110-nodejs-databases/101-document/readme.md
new file mode 100644
index 000000000..eb9d8f656
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/110-nodejs-databases/101-document/readme.md
@@ -0,0 +1 @@
+# Document
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/110-nodejs-databases/readme.md b/content/roadmaps/107-nodejs/content/110-nodejs-databases/readme.md
new file mode 100644
index 000000000..cb52d37ae
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/110-nodejs-databases/readme.md
@@ -0,0 +1 @@
+# Nodejs databases
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/111-nodejs-testing/100-jest.md b/content/roadmaps/107-nodejs/content/111-nodejs-testing/100-jest.md
new file mode 100644
index 000000000..535d60df1
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/111-nodejs-testing/100-jest.md
@@ -0,0 +1 @@
+# Jest
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/111-nodejs-testing/101-mocha.md b/content/roadmaps/107-nodejs/content/111-nodejs-testing/101-mocha.md
new file mode 100644
index 000000000..276bde099
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/111-nodejs-testing/101-mocha.md
@@ -0,0 +1 @@
+# Mocha
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/111-nodejs-testing/102-cypress.md b/content/roadmaps/107-nodejs/content/111-nodejs-testing/102-cypress.md
new file mode 100644
index 000000000..c881065db
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/111-nodejs-testing/102-cypress.md
@@ -0,0 +1 @@
+# Cypress
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/111-nodejs-testing/readme.md b/content/roadmaps/107-nodejs/content/111-nodejs-testing/readme.md
new file mode 100644
index 000000000..585d4aa3c
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/111-nodejs-testing/readme.md
@@ -0,0 +1 @@
+# Nodejs testing
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/112-nodejs-logging/100-morgan.md b/content/roadmaps/107-nodejs/content/112-nodejs-logging/100-morgan.md
new file mode 100644
index 000000000..3004aace3
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/112-nodejs-logging/100-morgan.md
@@ -0,0 +1 @@
+# Morgan
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/112-nodejs-logging/101-winston.md b/content/roadmaps/107-nodejs/content/112-nodejs-logging/101-winston.md
new file mode 100644
index 000000000..62b5f9358
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/112-nodejs-logging/101-winston.md
@@ -0,0 +1 @@
+# Winston
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/112-nodejs-logging/readme.md b/content/roadmaps/107-nodejs/content/112-nodejs-logging/readme.md
new file mode 100644
index 000000000..36ac77143
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/112-nodejs-logging/readme.md
@@ -0,0 +1 @@
+# Nodejs logging
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/113-nodejs-keep-app-running-prod/100-pm2.md b/content/roadmaps/107-nodejs/content/113-nodejs-keep-app-running-prod/100-pm2.md
new file mode 100644
index 000000000..999090dc3
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/113-nodejs-keep-app-running-prod/100-pm2.md
@@ -0,0 +1 @@
+# Pm2
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/113-nodejs-keep-app-running-prod/101-forever.md b/content/roadmaps/107-nodejs/content/113-nodejs-keep-app-running-prod/101-forever.md
new file mode 100644
index 000000000..4515b1850
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/113-nodejs-keep-app-running-prod/101-forever.md
@@ -0,0 +1 @@
+# Forever
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/113-nodejs-keep-app-running-prod/102-nohup.md b/content/roadmaps/107-nodejs/content/113-nodejs-keep-app-running-prod/102-nohup.md
new file mode 100644
index 000000000..b59c58107
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/113-nodejs-keep-app-running-prod/102-nohup.md
@@ -0,0 +1 @@
+# Nohup
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/113-nodejs-keep-app-running-prod/readme.md b/content/roadmaps/107-nodejs/content/113-nodejs-keep-app-running-prod/readme.md
new file mode 100644
index 000000000..5d1f1ce7d
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/113-nodejs-keep-app-running-prod/readme.md
@@ -0,0 +1 @@
+# Nodejs keep app running prod
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/114-nodejs-threads/100-child-process.md b/content/roadmaps/107-nodejs/content/114-nodejs-threads/100-child-process.md
new file mode 100644
index 000000000..c208a638e
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/114-nodejs-threads/100-child-process.md
@@ -0,0 +1 @@
+# Child process
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/114-nodejs-threads/101-cluster.md b/content/roadmaps/107-nodejs/content/114-nodejs-threads/101-cluster.md
new file mode 100644
index 000000000..ab0671b1f
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/114-nodejs-threads/101-cluster.md
@@ -0,0 +1 @@
+# Cluster
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/114-nodejs-threads/102-worker-threads.md b/content/roadmaps/107-nodejs/content/114-nodejs-threads/102-worker-threads.md
new file mode 100644
index 000000000..a4905f67d
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/114-nodejs-threads/102-worker-threads.md
@@ -0,0 +1 @@
+# Worker threads
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/114-nodejs-threads/readme.md b/content/roadmaps/107-nodejs/content/114-nodejs-threads/readme.md
new file mode 100644
index 000000000..074fc502c
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/114-nodejs-threads/readme.md
@@ -0,0 +1 @@
+# Nodejs threads
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/115-nodejs-streams.md b/content/roadmaps/107-nodejs/content/115-nodejs-streams.md
new file mode 100644
index 000000000..be6f2173c
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/115-nodejs-streams.md
@@ -0,0 +1 @@
+# Nodejs streams
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/116-nodejs-more-debugging/100-memory-leaks/100-garbage-collection.md b/content/roadmaps/107-nodejs/content/116-nodejs-more-debugging/100-memory-leaks/100-garbage-collection.md
new file mode 100644
index 000000000..2e9dd7ee1
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/116-nodejs-more-debugging/100-memory-leaks/100-garbage-collection.md
@@ -0,0 +1 @@
+# Garbage collection
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/116-nodejs-more-debugging/100-memory-leaks/readme.md b/content/roadmaps/107-nodejs/content/116-nodejs-more-debugging/100-memory-leaks/readme.md
new file mode 100644
index 000000000..21bbaaae6
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/116-nodejs-more-debugging/100-memory-leaks/readme.md
@@ -0,0 +1 @@
+# Memory leaks
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/116-nodejs-more-debugging/101-node-inspect.md b/content/roadmaps/107-nodejs/content/116-nodejs-more-debugging/101-node-inspect.md
new file mode 100644
index 000000000..8057bad3a
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/116-nodejs-more-debugging/101-node-inspect.md
@@ -0,0 +1 @@
+# Node inspect
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/116-nodejs-more-debugging/102-using-apm.md b/content/roadmaps/107-nodejs/content/116-nodejs-more-debugging/102-using-apm.md
new file mode 100644
index 000000000..f7e0ab1ec
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/116-nodejs-more-debugging/102-using-apm.md
@@ -0,0 +1 @@
+# Using apm
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/116-nodejs-more-debugging/readme.md b/content/roadmaps/107-nodejs/content/116-nodejs-more-debugging/readme.md
new file mode 100644
index 000000000..d5c95c71d
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/116-nodejs-more-debugging/readme.md
@@ -0,0 +1 @@
+# Nodejs more debugging
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/117-nodejs-common-modules/100-builtin-modules.md b/content/roadmaps/107-nodejs/content/117-nodejs-common-modules/100-builtin-modules.md
new file mode 100644
index 000000000..ab78635e1
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/117-nodejs-common-modules/100-builtin-modules.md
@@ -0,0 +1 @@
+# Builtin modules
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/117-nodejs-common-modules/readme.md b/content/roadmaps/107-nodejs/content/117-nodejs-common-modules/readme.md
new file mode 100644
index 000000000..1a8794d82
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/117-nodejs-common-modules/readme.md
@@ -0,0 +1 @@
+# Nodejs common modules
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/content/readme.md b/content/roadmaps/107-nodejs/content/readme.md
new file mode 100644
index 000000000..4e768b56d
--- /dev/null
+++ b/content/roadmaps/107-nodejs/content/readme.md
@@ -0,0 +1 @@
+#
\ No newline at end of file
diff --git a/content/roadmaps/107-nodejs/meta.json b/content/roadmaps/107-nodejs/meta.json
index daa2697d2..30c37b6c3 100644
--- a/content/roadmaps/107-nodejs/meta.json
+++ b/content/roadmaps/107-nodejs/meta.json
@@ -63,5 +63,6 @@
"featured": true,
"imageUrl": "/roadmaps/nodejs.png",
"jsonUrl": "/project/nodejs.json",
- "pdfUrl": "/pdfs/nodejs.pdf"
-}
+ "pdfUrl": "/pdfs/nodejs.pdf",
+ "contentPathsFilePath": "./content-paths.json"
+}
\ No newline at end of file
diff --git a/public/project/nodejs.json b/public/project/nodejs.json
index 35131a7ca..ece3d78dc 100644
--- a/public/project/nodejs.json
+++ b/public/project/nodejs.json
@@ -5,7 +5,7 @@
{
"ID": "4933",
"typeID": "Arrow",
- "zOrder": "88",
+ "zOrder": "87",
"w": "120",
"h": "142",
"measuredW": "150",
@@ -35,7 +35,7 @@
{
"ID": "4945",
"typeID": "Arrow",
- "zOrder": "89",
+ "zOrder": "88",
"w": "19",
"h": "76",
"measuredW": "150",
@@ -65,7 +65,7 @@
{
"ID": "4946",
"typeID": "Label",
- "zOrder": "90",
+ "zOrder": "89",
"measuredW": "97",
"measuredH": "36",
"x": "667",
@@ -79,7 +79,7 @@
{
"ID": "4947",
"typeID": "Arrow",
- "zOrder": "91",
+ "zOrder": "90",
"w": "33",
"h": "91",
"measuredW": "150",
@@ -109,7 +109,7 @@
{
"ID": "4948",
"typeID": "Canvas",
- "zOrder": "92",
+ "zOrder": "91",
"w": "350",
"h": "141",
"measuredW": "100",
@@ -120,7 +120,7 @@
{
"ID": "4949",
"typeID": "Label",
- "zOrder": "93",
+ "zOrder": "92",
"measuredW": "314",
"measuredH": "25",
"x": "887",
@@ -133,7 +133,7 @@
{
"ID": "4950",
"typeID": "Label",
- "zOrder": "94",
+ "zOrder": "93",
"measuredW": "319",
"measuredH": "25",
"x": "887",
@@ -146,7 +146,7 @@
{
"ID": "4951",
"typeID": "__group__",
- "zOrder": "95",
+ "zOrder": "94",
"measuredW": "320",
"measuredH": "45",
"w": "320",
@@ -251,12 +251,12 @@
{
"ID": "4955",
"typeID": "__group__",
- "zOrder": "97",
- "measuredW": "491",
+ "zOrder": "96",
+ "measuredW": "400",
"measuredH": "136",
- "w": "491",
+ "w": "400",
"h": "136",
- "x": "106",
+ "x": "146",
"y": "206",
"children": {
"controls": {
@@ -265,7 +265,7 @@
"ID": "0",
"typeID": "Canvas",
"zOrder": "0",
- "w": "491",
+ "w": "400",
"h": "136",
"measuredW": "100",
"measuredH": "70",
@@ -289,26 +289,26 @@
"ID": "6",
"typeID": "Label",
"zOrder": "3",
- "measuredW": "394",
+ "measuredW": "289",
"measuredH": "24",
"x": "60",
"y": "86",
"properties": {
"size": "16",
- "text": "Advanced Topics / pick these after intermediate topics"
+ "text": "Advanced Topics / pick these in the end"
}
},
{
"ID": "9",
"typeID": "Label",
"zOrder": "5",
- "measuredW": "385",
+ "measuredW": "265",
"measuredH": "24",
"x": "59",
"y": "54",
"properties": {
"size": "16",
- "text": "Intermediate Topics / pick them after beginner topics"
+ "text": "Intermediate Topics / pick them next"
}
},
{
@@ -477,169 +477,6 @@
}
}
},
- {
- "ID": "5090",
- "typeID": "TextArea",
- "zOrder": "99",
- "w": "374",
- "h": "50",
- "measuredW": "200",
- "measuredH": "140",
- "x": "520",
- "y": "522",
- "properties": {
- "color": "16776960"
- }
- },
- {
- "ID": "5091",
- "typeID": "Label",
- "zOrder": "100",
- "measuredW": "174",
- "measuredH": "25",
- "x": "620",
- "y": "534",
- "properties": {
- "size": "17",
- "text": "Introduction to Node.js"
- }
- },
- {
- "ID": "5094",
- "typeID": "TextArea",
- "zOrder": "86",
- "w": "238",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "145",
- "y": "476",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5095",
- "typeID": "Label",
- "zOrder": "87",
- "measuredW": "127",
- "measuredH": "25",
- "x": "200",
- "y": "485",
- "properties": {
- "size": "17",
- "text": "What is Node.js?"
- }
- },
- {
- "ID": "5097",
- "typeID": "TextArea",
- "zOrder": "101",
- "w": "238",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "145",
- "y": "526",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5098",
- "typeID": "Label",
- "zOrder": "102",
- "measuredW": "134",
- "measuredH": "25",
- "x": "197",
- "y": "535",
- "properties": {
- "size": "17",
- "text": "Why use Node.js?"
- }
- },
- {
- "ID": "5099",
- "typeID": "TextArea",
- "zOrder": "103",
- "w": "238",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "145",
- "y": "575",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5100",
- "typeID": "Label",
- "zOrder": "104",
- "measuredW": "134",
- "measuredH": "25",
- "x": "197",
- "y": "584",
- "properties": {
- "size": "17",
- "text": "History of Node.js"
- }
- },
- {
- "ID": "5101",
- "typeID": "TextArea",
- "zOrder": "105",
- "w": "238",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "985",
- "y": "498",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5102",
- "typeID": "Label",
- "zOrder": "106",
- "measuredW": "147",
- "measuredH": "25",
- "x": "1030",
- "y": "507",
- "properties": {
- "size": "17",
- "text": "Node.js vs Browser"
- }
- },
- {
- "ID": "5103",
- "typeID": "TextArea",
- "zOrder": "107",
- "w": "238",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "985",
- "y": "548",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5104",
- "typeID": "Label",
- "zOrder": "108",
- "w": "174",
- "measuredW": "173",
- "measuredH": "25",
- "x": "1018",
- "y": "557",
- "properties": {
- "size": "17",
- "text": "Running Node.js Code"
- }
- },
{
"ID": "5106",
"typeID": "Arrow",
@@ -795,111 +632,6 @@
}
}
},
- {
- "ID": "5117",
- "typeID": "TextArea",
- "zOrder": "109",
- "w": "183",
- "h": "50",
- "measuredW": "200",
- "measuredH": "140",
- "x": "417",
- "y": "678",
- "properties": {
- "color": "16776960"
- }
- },
- {
- "ID": "5118",
- "typeID": "Label",
- "zOrder": "110",
- "measuredW": "66",
- "measuredH": "25",
- "x": "476",
- "y": "690",
- "properties": {
- "size": "17",
- "text": "Modules"
- }
- },
- {
- "ID": "5119",
- "typeID": "TextArea",
- "zOrder": "111",
- "w": "180",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "161",
- "y": "655",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5120",
- "typeID": "Label",
- "zOrder": "112",
- "measuredW": "93",
- "measuredH": "25",
- "x": "204",
- "y": "664",
- "properties": {
- "size": "17",
- "text": "Common JS"
- }
- },
- {
- "ID": "5121",
- "typeID": "TextArea",
- "zOrder": "113",
- "w": "180",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "161",
- "y": "704",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5122",
- "typeID": "Label",
- "zOrder": "114",
- "measuredW": "37",
- "measuredH": "25",
- "x": "232",
- "y": "713",
- "properties": {
- "size": "17",
- "text": "ESM"
- }
- },
- {
- "ID": "5123",
- "typeID": "TextArea",
- "zOrder": "80",
- "w": "211",
- "h": "155",
- "measuredW": "200",
- "measuredH": "140",
- "x": "145",
- "y": "639"
- },
- {
- "ID": "5124",
- "typeID": "Label",
- "zOrder": "115",
- "measuredW": "137",
- "measuredH": "25",
- "x": "182",
- "y": "758",
- "properties": {
- "size": "17",
- "text": "Common Formats"
- }
- },
{
"ID": "5125",
"typeID": "Arrow",
@@ -931,60 +663,6 @@
}
}
},
- {
- "ID": "5126",
- "typeID": "TextArea",
- "zOrder": "116",
- "w": "262",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "674",
- "y": "655",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5127",
- "typeID": "Label",
- "zOrder": "117",
- "measuredW": "200",
- "measuredH": "25",
- "x": "705",
- "y": "664",
- "properties": {
- "size": "17",
- "text": "Creating Custom Modules"
- }
- },
- {
- "ID": "5128",
- "typeID": "TextArea",
- "zOrder": "118",
- "w": "262",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "674",
- "y": "706",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5129",
- "typeID": "Label",
- "zOrder": "119",
- "measuredW": "116",
- "measuredH": "25",
- "x": "747",
- "y": "715",
- "properties": {
- "size": "17",
- "text": "[global] Keyword"
- }
- },
{
"ID": "5130",
"typeID": "Arrow",
@@ -1047,33 +725,6 @@
}
}
},
- {
- "ID": "5132",
- "typeID": "TextArea",
- "zOrder": "120",
- "w": "199",
- "h": "50",
- "measuredW": "200",
- "measuredH": "140",
- "x": "658",
- "y": "847",
- "properties": {
- "color": "16776960"
- }
- },
- {
- "ID": "5133",
- "typeID": "Label",
- "zOrder": "121",
- "measuredW": "34",
- "measuredH": "25",
- "x": "741",
- "y": "859",
- "properties": {
- "size": "17",
- "text": "npm"
- }
- },
{
"ID": "5134",
"typeID": "Arrow",
@@ -1104,165 +755,6 @@
}
}
},
- {
- "ID": "5135",
- "typeID": "TextArea",
- "zOrder": "122",
- "w": "239",
- "h": "156",
- "measuredW": "200",
- "measuredH": "140",
- "x": "985",
- "y": "612"
- },
- {
- "ID": "5136",
- "typeID": "Label",
- "zOrder": "123",
- "measuredW": "149",
- "measuredH": "25",
- "x": "1038",
- "y": "729",
- "properties": {
- "size": "17",
- "text": "Installing Packages"
- }
- },
- {
- "ID": "5137",
- "typeID": "TextArea",
- "zOrder": "124",
- "w": "209",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "999",
- "y": "675",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5138",
- "typeID": "Label",
- "zOrder": "125",
- "measuredW": "130",
- "measuredH": "25",
- "x": "1039",
- "y": "684",
- "properties": {
- "size": "17",
- "text": "Local Installation"
- }
- },
- {
- "ID": "5139",
- "typeID": "TextArea",
- "zOrder": "126",
- "w": "209",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "999",
- "y": "626",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5140",
- "typeID": "Label",
- "zOrder": "127",
- "measuredW": "138",
- "measuredH": "25",
- "x": "1035",
- "y": "635",
- "properties": {
- "size": "17",
- "text": "Global Installation"
- }
- },
- {
- "ID": "5141",
- "typeID": "TextArea",
- "zOrder": "128",
- "w": "239",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "985",
- "y": "786",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5142",
- "typeID": "Label",
- "zOrder": "129",
- "measuredW": "150",
- "measuredH": "25",
- "x": "1030",
- "y": "795",
- "properties": {
- "size": "17",
- "text": "Updating Packages"
- }
- },
- {
- "ID": "5143",
- "typeID": "TextArea",
- "zOrder": "130",
- "w": "239",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "984",
- "y": "836",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5144",
- "typeID": "Label",
- "zOrder": "131",
- "measuredW": "194",
- "measuredH": "25",
- "x": "1012",
- "y": "845",
- "properties": {
- "size": "17",
- "text": "Using Installed Packages"
- }
- },
- {
- "ID": "5145",
- "typeID": "TextArea",
- "zOrder": "132",
- "w": "239",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "984",
- "y": "886",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5146",
- "typeID": "Label",
- "zOrder": "133",
- "measuredW": "122",
- "measuredH": "25",
- "x": "1043",
- "y": "895",
- "properties": {
- "size": "17",
- "text": "Running Scripts"
- }
- },
{
"ID": "5147",
"typeID": "Arrow",
@@ -1387,33 +879,6 @@
}
}
},
- {
- "ID": "5152",
- "typeID": "TextArea",
- "zOrder": "134",
- "w": "120",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "737",
- "y": "774",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5153",
- "typeID": "Label",
- "zOrder": "135",
- "measuredW": "27",
- "measuredH": "25",
- "x": "783",
- "y": "783",
- "properties": {
- "size": "17",
- "text": "npx"
- }
- },
{
"ID": "5154",
"typeID": "Arrow",
@@ -1445,33 +910,6 @@
}
}
},
- {
- "ID": "5155",
- "typeID": "TextArea",
- "zOrder": "136",
- "w": "239",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "984",
- "y": "936",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5156",
- "typeID": "Label",
- "zOrder": "137",
- "measuredW": "129",
- "measuredH": "25",
- "x": "1039",
- "y": "945",
- "properties": {
- "size": "17",
- "text": "npm workspaces"
- }
- },
{
"ID": "5157",
"typeID": "Arrow",
@@ -1503,84 +941,6 @@
}
}
},
- {
- "ID": "5158",
- "typeID": "TextArea",
- "zOrder": "138",
- "w": "259",
- "h": "49",
- "measuredW": "200",
- "measuredH": "140",
- "x": "269",
- "y": "850"
- },
- {
- "ID": "5159",
- "typeID": "Label",
- "zOrder": "139",
- "measuredW": "146",
- "measuredH": "25",
- "x": "355",
- "y": "862",
- "properties": {
- "size": "17",
- "text": "Creating Packages"
- }
- },
- {
- "ID": "5160",
- "typeID": "TextArea",
- "zOrder": "140",
- "w": "184",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "155",
- "y": "833",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5161",
- "typeID": "Label",
- "zOrder": "141",
- "measuredW": "133",
- "measuredH": "25",
- "x": "180",
- "y": "842",
- "properties": {
- "size": "17",
- "text": "Private Packages"
- }
- },
- {
- "ID": "5162",
- "typeID": "TextArea",
- "zOrder": "142",
- "w": "184",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "155",
- "y": "882",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5163",
- "typeID": "Label",
- "zOrder": "143",
- "measuredW": "126",
- "measuredH": "25",
- "x": "184",
- "y": "891",
- "properties": {
- "size": "17",
- "text": "Public Packages"
- }
- },
{
"ID": "5167",
"typeID": "Arrow",
@@ -1611,33 +971,6 @@
"stroke": "dotted"
}
},
- {
- "ID": "5169",
- "typeID": "TextArea",
- "zOrder": "144",
- "w": "199",
- "h": "50",
- "measuredW": "200",
- "measuredH": "140",
- "x": "658",
- "y": "1024",
- "properties": {
- "color": "16776960"
- }
- },
- {
- "ID": "5170",
- "typeID": "Label",
- "zOrder": "145",
- "measuredW": "113",
- "measuredH": "25",
- "x": "701",
- "y": "1036",
- "properties": {
- "size": "17",
- "text": "Error Handling"
- }
- },
{
"ID": "5171",
"typeID": "Arrow",
@@ -1698,141 +1031,6 @@
}
}
},
- {
- "ID": "5173",
- "typeID": "TextArea",
- "zOrder": "146",
- "w": "169",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "419",
- "y": "1027",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5174",
- "typeID": "Label",
- "zOrder": "147",
- "measuredW": "117",
- "measuredH": "25",
- "x": "445",
- "y": "1036",
- "properties": {
- "size": "17",
- "text": "Types of Errors"
- }
- },
- {
- "ID": "5175",
- "typeID": "TextArea",
- "zOrder": "148",
- "w": "211",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "145",
- "y": "958",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5176",
- "typeID": "Label",
- "zOrder": "149",
- "measuredW": "133",
- "measuredH": "25",
- "x": "184",
- "y": "967",
- "properties": {
- "size": "17",
- "text": "JavaScript Errors"
- }
- },
- {
- "ID": "5177",
- "typeID": "TextArea",
- "zOrder": "150",
- "w": "211",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "145",
- "y": "1007",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5178",
- "typeID": "Label",
- "zOrder": "151",
- "measuredW": "108",
- "measuredH": "25",
- "x": "197",
- "y": "1016",
- "properties": {
- "size": "17",
- "text": "System Errors"
- }
- },
- {
- "ID": "5179",
- "typeID": "TextArea",
- "zOrder": "152",
- "w": "211",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "145",
- "y": "1056",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5180",
- "typeID": "Label",
- "zOrder": "153",
- "measuredW": "165",
- "measuredH": "25",
- "x": "168",
- "y": "1065",
- "properties": {
- "size": "17",
- "text": "User Specified Errors"
- }
- },
- {
- "ID": "5181",
- "typeID": "TextArea",
- "zOrder": "154",
- "w": "211",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "145",
- "y": "1106",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5182",
- "typeID": "Label",
- "zOrder": "155",
- "measuredW": "124",
- "measuredH": "25",
- "x": "189",
- "y": "1115",
- "properties": {
- "size": "17",
- "text": "Assertion Errors"
- }
- },
{
"ID": "5183",
"typeID": "Arrow",
@@ -1957,114 +1155,6 @@
}
}
},
- {
- "ID": "5187",
- "typeID": "TextArea",
- "zOrder": "156",
- "w": "239",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "984",
- "y": "1002",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5188",
- "typeID": "Label",
- "zOrder": "157",
- "measuredW": "187",
- "measuredH": "25",
- "x": "1010",
- "y": "1011",
- "properties": {
- "size": "17",
- "text": "Call Stack & Stack Trace"
- }
- },
- {
- "ID": "5191",
- "typeID": "TextArea",
- "zOrder": "158",
- "w": "206",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "409",
- "y": "937",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5192",
- "typeID": "Label",
- "zOrder": "159",
- "measuredW": "164",
- "measuredH": "25",
- "x": "430",
- "y": "946",
- "properties": {
- "size": "17",
- "text": "Uncaught Exceptions"
- }
- },
- {
- "ID": "5193",
- "typeID": "TextArea",
- "zOrder": "160",
- "w": "239",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "983",
- "y": "1052",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5194",
- "typeID": "Label",
- "zOrder": "161",
- "measuredW": "147",
- "measuredH": "25",
- "x": "1029",
- "y": "1061",
- "properties": {
- "size": "17",
- "text": "Debugging Node.js"
- }
- },
- {
- "ID": "5195",
- "typeID": "TextArea",
- "zOrder": "162",
- "w": "206",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "409",
- "y": "1115",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5196",
- "typeID": "Label",
- "zOrder": "163",
- "measuredW": "170",
- "measuredH": "25",
- "x": "427",
- "y": "1124",
- "properties": {
- "size": "17",
- "text": "Handling Async Errors"
- }
- },
{
"ID": "5197",
"typeID": "Arrow",
@@ -2219,37 +1309,10 @@
}
}
},
- {
- "ID": "5204",
- "typeID": "TextArea",
- "zOrder": "164",
- "w": "251",
- "h": "50",
- "measuredW": "200",
- "measuredH": "140",
- "x": "408",
- "y": "1303",
- "properties": {
- "color": "16776960"
- }
- },
- {
- "ID": "5205",
- "typeID": "Label",
- "zOrder": "165",
- "measuredW": "215",
- "measuredH": "25",
- "x": "426",
- "y": "1315",
- "properties": {
- "size": "17",
- "text": "Asynchronous Programming"
- }
- },
{
"ID": "5206",
"typeID": "TextArea",
- "zOrder": "166",
+ "zOrder": "125",
"w": "211",
"h": "393",
"measuredW": "200",
@@ -2260,7 +1323,7 @@
{
"ID": "5207",
"typeID": "Label",
- "zOrder": "167",
+ "zOrder": "126",
"measuredW": "150",
"measuredH": "25",
"x": "176",
@@ -2273,13 +1336,16 @@
{
"ID": "5228",
"typeID": "__group__",
- "zOrder": "168",
+ "zOrder": "127",
"measuredW": "184",
"measuredH": "44",
"w": "184",
"h": "44",
"x": "159",
"y": "1205",
+ "properties": {
+ "controlName": "102-nodejs-async-programming:promises"
+ },
"children": {
"controls": {
"control": [
@@ -2317,13 +1383,16 @@
{
"ID": "5229",
"typeID": "__group__",
- "zOrder": "174",
+ "zOrder": "133",
"measuredW": "184",
"measuredH": "44",
"w": "184",
"h": "44",
"x": "159",
"y": "1253",
+ "properties": {
+ "controlName": "103-nodejs-async-programming:async-await"
+ },
"children": {
"controls": {
"control": [
@@ -2361,13 +1430,16 @@
{
"ID": "5231",
"typeID": "__group__",
- "zOrder": "169",
+ "zOrder": "128",
"measuredW": "184",
"measuredH": "44",
"w": "184",
"h": "44",
"x": "159",
"y": "1302",
+ "properties": {
+ "controlName": "104-nodejs-async-programming:callbacks"
+ },
"children": {
"controls": {
"control": [
@@ -2405,13 +1477,16 @@
{
"ID": "5232",
"typeID": "__group__",
- "zOrder": "170",
+ "zOrder": "129",
"measuredW": "184",
"measuredH": "44",
"w": "184",
"h": "44",
"x": "159",
"y": "1351",
+ "properties": {
+ "controlName": "105-nodejs-async-programming:set-timeout"
+ },
"children": {
"controls": {
"control": [
@@ -2449,13 +1524,16 @@
{
"ID": "5233",
"typeID": "__group__",
- "zOrder": "171",
+ "zOrder": "130",
"measuredW": "184",
"measuredH": "44",
"w": "184",
"h": "44",
"x": "159",
"y": "1400",
+ "properties": {
+ "controlName": "106-nodejs-async-programming:set-interval"
+ },
"children": {
"controls": {
"control": [
@@ -2493,13 +1571,16 @@
{
"ID": "5234",
"typeID": "__group__",
- "zOrder": "172",
+ "zOrder": "131",
"measuredW": "184",
"measuredH": "44",
"w": "184",
"h": "44",
"x": "159",
"y": "1449",
+ "properties": {
+ "controlName": "107-nodejs-async-programming:set-immediate"
+ },
"children": {
"controls": {
"control": [
@@ -2537,13 +1618,16 @@
{
"ID": "5235",
"typeID": "__group__",
- "zOrder": "173",
+ "zOrder": "132",
"measuredW": "184",
"measuredH": "44",
"w": "184",
"h": "44",
"x": "159",
"y": "1497",
+ "properties": {
+ "controlName": "108-nodejs-async-programming:process-next-tick"
+ },
"children": {
"controls": {
"control": [
@@ -2608,60 +1692,6 @@
}
}
},
- {
- "ID": "5237",
- "typeID": "TextArea",
- "zOrder": "175",
- "w": "166",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "410",
- "y": "1236",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5238",
- "typeID": "Label",
- "zOrder": "176",
- "measuredW": "88",
- "measuredH": "25",
- "x": "449",
- "y": "1245",
- "properties": {
- "size": "17",
- "text": "Event Loop"
- }
- },
- {
- "ID": "5239",
- "typeID": "TextArea",
- "zOrder": "177",
- "w": "166",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "410",
- "y": "1187",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5240",
- "typeID": "Label",
- "zOrder": "178",
- "measuredW": "105",
- "measuredH": "25",
- "x": "440",
- "y": "1196",
- "properties": {
- "size": "17",
- "text": "Event Emitter"
- }
- },
{
"ID": "5241",
"typeID": "Arrow",
@@ -2723,37 +1753,10 @@
}
}
},
- {
- "ID": "5245",
- "typeID": "TextArea",
- "zOrder": "179",
- "w": "298",
- "h": "50",
- "measuredW": "200",
- "measuredH": "140",
- "x": "764",
- "y": "1313",
- "properties": {
- "color": "16776960"
- }
- },
- {
- "ID": "5246",
- "typeID": "Label",
- "zOrder": "180",
- "measuredW": "138",
- "measuredH": "25",
- "x": "844",
- "y": "1325",
- "properties": {
- "size": "17",
- "text": "Working with Files"
- }
- },
{
"ID": "5247",
"typeID": "TextArea",
- "zOrder": "181",
+ "zOrder": "137",
"w": "254",
"h": "163",
"measuredW": "200",
@@ -2764,7 +1767,7 @@
{
"ID": "5248",
"typeID": "Label",
- "zOrder": "182",
+ "zOrder": "138",
"measuredW": "177",
"measuredH": "25",
"x": "1007",
@@ -2774,114 +1777,6 @@
"text": "OpenSource Packages"
}
},
- {
- "ID": "5249",
- "typeID": "TextArea",
- "zOrder": "183",
- "w": "104",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "986",
- "y": "1135",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5250",
- "typeID": "Label",
- "zOrder": "184",
- "measuredW": "33",
- "measuredH": "25",
- "x": "1021",
- "y": "1144",
- "properties": {
- "size": "17",
- "text": "glob"
- }
- },
- {
- "ID": "5251",
- "typeID": "TextArea",
- "zOrder": "185",
- "w": "112",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "1098",
- "y": "1135",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5252",
- "typeID": "Label",
- "zOrder": "186",
- "measuredW": "50",
- "measuredH": "25",
- "x": "1129",
- "y": "1144",
- "properties": {
- "size": "17",
- "text": "globby"
- }
- },
- {
- "ID": "5253",
- "typeID": "TextArea",
- "zOrder": "187",
- "w": "112",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "1098",
- "y": "1185",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5254",
- "typeID": "Label",
- "zOrder": "188",
- "measuredW": "66",
- "measuredH": "25",
- "x": "1121",
- "y": "1194",
- "properties": {
- "size": "17",
- "text": "chokidar"
- }
- },
- {
- "ID": "5255",
- "typeID": "TextArea",
- "zOrder": "189",
- "w": "104",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "986",
- "y": "1185",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5256",
- "typeID": "Label",
- "zOrder": "190",
- "measuredW": "58",
- "measuredH": "25",
- "x": "1009",
- "y": "1194",
- "properties": {
- "size": "17",
- "text": "fs-extra"
- }
- },
{
"ID": "5257",
"typeID": "Arrow",
@@ -2913,141 +1808,6 @@
}
}
},
- {
- "ID": "5258",
- "typeID": "TextArea",
- "zOrder": "191",
- "w": "142",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "799",
- "y": "1239",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5259",
- "typeID": "Label",
- "zOrder": "192",
- "measuredW": "75",
- "measuredH": "25",
- "x": "832",
- "y": "1248",
- "properties": {
- "size": "17",
- "text": "{color:purple}fs{color} module"
- }
- },
- {
- "ID": "5260",
- "typeID": "TextArea",
- "zOrder": "193",
- "w": "142",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "799",
- "y": "1189",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5261",
- "typeID": "Label",
- "zOrder": "194",
- "measuredW": "96",
- "measuredH": "25",
- "x": "822",
- "y": "1198",
- "properties": {
- "size": "17",
- "text": "{color:purple}path{color} module"
- }
- },
- {
- "ID": "5262",
- "typeID": "TextArea",
- "zOrder": "195",
- "w": "142",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "1080",
- "y": "1398",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5263",
- "typeID": "Label",
- "zOrder": "196",
- "measuredW": "85",
- "measuredH": "25",
- "x": "1108",
- "y": "1407",
- "properties": {
- "size": "17",
- "text": "{color:purple}__dirname{color}"
- }
- },
- {
- "ID": "5264",
- "typeID": "TextArea",
- "zOrder": "197",
- "w": "142",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "1080",
- "y": "1448",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5265",
- "typeID": "Label",
- "zOrder": "198",
- "measuredW": "87",
- "measuredH": "25",
- "x": "1107",
- "y": "1457",
- "properties": {
- "size": "17",
- "text": "{color:purple}__filename{color}"
- }
- },
- {
- "ID": "5266",
- "typeID": "TextArea",
- "zOrder": "199",
- "w": "142",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "799",
- "y": "1139",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5267",
- "typeID": "Label",
- "zOrder": "200",
- "measuredW": "108",
- "measuredH": "25",
- "x": "816",
- "y": "1148",
- "properties": {
- "size": "17",
- "text": "{color:purple}process.cwd(){color}"
- }
- },
{
"ID": "5268",
"typeID": "Arrow",
@@ -3110,33 +1870,6 @@
}
}
},
- {
- "ID": "5270",
- "typeID": "TextArea",
- "zOrder": "201",
- "w": "243",
- "h": "50",
- "measuredW": "200",
- "measuredH": "140",
- "x": "699",
- "y": "1537",
- "properties": {
- "color": "16776960"
- }
- },
- {
- "ID": "5271",
- "typeID": "Label",
- "zOrder": "202",
- "measuredW": "160",
- "measuredH": "25",
- "x": "741",
- "y": "1549",
- "properties": {
- "size": "17",
- "text": "Command Line Apps"
- }
- },
{
"ID": "5272",
"typeID": "Arrow",
@@ -3167,168 +1900,6 @@
}
}
},
- {
- "ID": "5273",
- "typeID": "TextArea",
- "zOrder": "203",
- "w": "196",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "383",
- "y": "1450",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5274",
- "typeID": "Label",
- "zOrder": "204",
- "measuredW": "161",
- "measuredH": "25",
- "x": "400",
- "y": "1459",
- "properties": {
- "size": "17",
- "text": "Exitting & Exit Codes"
- }
- },
- {
- "ID": "5275",
- "typeID": "TextArea",
- "zOrder": "205",
- "w": "285",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "619",
- "y": "1450",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5276",
- "typeID": "Label",
- "zOrder": "206",
- "measuredW": "172",
- "measuredH": "25",
- "x": "676",
- "y": "1459",
- "properties": {
- "size": "17",
- "text": "Environment Variables"
- }
- },
- {
- "ID": "5277",
- "typeID": "TextArea",
- "zOrder": "207",
- "w": "153",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "619",
- "y": "1400",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5278",
- "typeID": "Label",
- "zOrder": "208",
- "measuredW": "123",
- "measuredH": "25",
- "x": "637",
- "y": "1409",
- "properties": {
- "size": "17",
- "text": "{color:purple}dotenv{color} package"
- }
- },
- {
- "ID": "5281",
- "typeID": "TextArea",
- "zOrder": "209",
- "w": "222",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "1000",
- "y": "1540",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5282",
- "typeID": "Label",
- "zOrder": "210",
- "measuredW": "156",
- "measuredH": "25",
- "x": "1033",
- "y": "1549",
- "properties": {
- "size": "17",
- "text": "Command Line Args"
- }
- },
- {
- "ID": "5283",
- "typeID": "TextArea",
- "zOrder": "211",
- "w": "221",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "1000",
- "y": "1613",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5284",
- "typeID": "Label",
- "zOrder": "212",
- "measuredW": "98",
- "measuredH": "25",
- "x": "1062",
- "y": "1622",
- "properties": {
- "size": "17",
- "text": "{color:purple}process.argv{color}"
- }
- },
- {
- "ID": "5285",
- "typeID": "TextArea",
- "zOrder": "213",
- "w": "222",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "1000",
- "y": "1663",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5286",
- "typeID": "Label",
- "zOrder": "214",
- "measuredW": "181",
- "measuredH": "25",
- "x": "1020",
- "y": "1672",
- "properties": {
- "size": "17",
- "text": "{color:purple}Commander.js{color} Package"
- }
- },
{
"ID": "5287",
"typeID": "Arrow",
@@ -3420,33 +1991,6 @@
}
}
},
- {
- "ID": "5290",
- "typeID": "TextArea",
- "zOrder": "215",
- "w": "124",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "780",
- "y": "1400",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5291",
- "typeID": "Label",
- "zOrder": "216",
- "measuredW": "93",
- "measuredH": "25",
- "x": "798",
- "y": "1409",
- "properties": {
- "size": "17",
- "text": "{color:purple}process.env{color}"
- }
- },
{
"ID": "5292",
"typeID": "Arrow",
@@ -3478,33 +2022,6 @@
}
}
},
- {
- "ID": "5293",
- "typeID": "TextArea",
- "zOrder": "217",
- "w": "199",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "380",
- "y": "1620",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5294",
- "typeID": "Label",
- "zOrder": "218",
- "measuredW": "94",
- "measuredH": "25",
- "x": "433",
- "y": "1629",
- "properties": {
- "size": "17",
- "text": "Taking Input"
- }
- },
{
"ID": "5295",
"typeID": "Arrow",
@@ -3535,87 +2052,6 @@
}
}
},
- {
- "ID": "5296",
- "typeID": "TextArea",
- "zOrder": "219",
- "w": "199",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "380",
- "y": "1690",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5297",
- "typeID": "Label",
- "zOrder": "220",
- "measuredW": "102",
- "measuredH": "25",
- "x": "429",
- "y": "1699",
- "properties": {
- "size": "17",
- "text": "{color:purple}process.stdin{color}"
- }
- },
- {
- "ID": "5298",
- "typeID": "TextArea",
- "zOrder": "221",
- "w": "199",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "380",
- "y": "1739",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5299",
- "typeID": "Label",
- "zOrder": "222",
- "measuredW": "135",
- "measuredH": "25",
- "x": "412",
- "y": "1748",
- "properties": {
- "size": "17",
- "text": "{color:purple}Prompts{color} package"
- }
- },
- {
- "ID": "5300",
- "typeID": "TextArea",
- "zOrder": "223",
- "w": "199",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "380",
- "y": "1788",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5301",
- "typeID": "Label",
- "zOrder": "224",
- "measuredW": "131",
- "measuredH": "25",
- "x": "414",
- "y": "1797",
- "properties": {
- "size": "17",
- "text": "{color:purple}Inquirer{color} package"
- }
- },
{
"ID": "5302",
"typeID": "Arrow",
@@ -3650,7 +2086,7 @@
{
"ID": "5303",
"typeID": "Arrow",
- "zOrder": "225",
+ "zOrder": "160",
"w": "70",
"h": "69",
"measuredW": "150",
@@ -3678,168 +2114,6 @@
}
}
},
- {
- "ID": "5304",
- "typeID": "TextArea",
- "zOrder": "226",
- "w": "199",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "161",
- "y": "1620",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5305",
- "typeID": "Label",
- "zOrder": "227",
- "measuredW": "116",
- "measuredH": "25",
- "x": "214",
- "y": "1629",
- "properties": {
- "size": "17",
- "text": "Printing Output"
- }
- },
- {
- "ID": "5306",
- "typeID": "TextArea",
- "zOrder": "228",
- "w": "199",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "161",
- "y": "1690",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5307",
- "typeID": "Label",
- "zOrder": "229",
- "measuredW": "113",
- "measuredH": "25",
- "x": "204",
- "y": "1699",
- "properties": {
- "size": "17",
- "text": "{color:purple}process.stdout{color}"
- }
- },
- {
- "ID": "5308",
- "typeID": "TextArea",
- "zOrder": "230",
- "w": "199",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "161",
- "y": "1789",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5309",
- "typeID": "Label",
- "zOrder": "231",
- "measuredW": "111",
- "measuredH": "25",
- "x": "205",
- "y": "1798",
- "properties": {
- "size": "17",
- "text": "{color:purple}chalk{color} package"
- }
- },
- {
- "ID": "5312",
- "typeID": "TextArea",
- "zOrder": "232",
- "w": "199",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "161",
- "y": "1838",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5313",
- "typeID": "Label",
- "zOrder": "233",
- "measuredW": "108",
- "measuredH": "25",
- "x": "207",
- "y": "1847",
- "properties": {
- "size": "17",
- "text": "{color:purple}figlet{color} package"
- }
- },
- {
- "ID": "5314",
- "typeID": "TextArea",
- "zOrder": "234",
- "w": "199",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "160",
- "y": "1887",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5315",
- "typeID": "Label",
- "zOrder": "235",
- "measuredW": "162",
- "measuredH": "25",
- "x": "179",
- "y": "1896",
- "properties": {
- "size": "17",
- "text": "{color:purple}cli-progress{color} package"
- }
- },
- {
- "ID": "5316",
- "typeID": "TextArea",
- "zOrder": "236",
- "w": "199",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "161",
- "y": "1739",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5317",
- "typeID": "Label",
- "zOrder": "237",
- "measuredW": "111",
- "measuredH": "25",
- "x": "205",
- "y": "1748",
- "properties": {
- "size": "17",
- "text": "{color:purple}process.stderr{color}"
- }
- },
{
"ID": "5318",
"typeID": "Arrow",
@@ -3900,37 +2174,10 @@
}
}
},
- {
- "ID": "5320",
- "typeID": "TextArea",
- "zOrder": "238",
- "w": "279",
- "h": "50",
- "measuredW": "200",
- "measuredH": "140",
- "x": "430",
- "y": "1895",
- "properties": {
- "color": "16776960"
- }
- },
- {
- "ID": "5321",
- "typeID": "Label",
- "zOrder": "239",
- "measuredW": "136",
- "measuredH": "25",
- "x": "502",
- "y": "1907",
- "properties": {
- "size": "17",
- "text": "Working with APIs"
- }
- },
{
"ID": "5322",
"typeID": "TextArea",
- "zOrder": "240",
+ "zOrder": "168",
"w": "215",
"h": "256",
"measuredW": "200",
@@ -3938,118 +2185,10 @@
"x": "1007",
"y": "1731"
},
- {
- "ID": "5323",
- "typeID": "TextArea",
- "zOrder": "241",
- "w": "186",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "1022",
- "y": "1745",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5324",
- "typeID": "Label",
- "zOrder": "242",
- "measuredW": "91",
- "measuredH": "25",
- "x": "1069",
- "y": "1754",
- "properties": {
- "size": "17",
- "text": "{color:blue}http{color} module"
- }
- },
- {
- "ID": "5325",
- "typeID": "TextArea",
- "zOrder": "243",
- "w": "186",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "1022",
- "y": "1794",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5326",
- "typeID": "Label",
- "zOrder": "244",
- "measuredW": "111",
- "measuredH": "25",
- "x": "1059",
- "y": "1803",
- "properties": {
- "size": "17",
- "text": "{color:blue}axios{color} package"
- }
- },
- {
- "ID": "5327",
- "typeID": "TextArea",
- "zOrder": "245",
- "w": "186",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "1022",
- "y": "1843",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5328",
- "typeID": "Label",
- "zOrder": "246",
- "measuredW": "129",
- "measuredH": "25",
- "x": "1050",
- "y": "1852",
- "properties": {
- "size": "17",
- "text": "{color:blue}unfetch{color} package"
- }
- },
- {
- "ID": "5329",
- "typeID": "TextArea",
- "zOrder": "247",
- "w": "186",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "1022",
- "y": "1892",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5330",
- "typeID": "Label",
- "zOrder": "248",
- "measuredW": "96",
- "measuredH": "25",
- "x": "1067",
- "y": "1901",
- "properties": {
- "size": "17",
- "text": "{color:blue}got{color} package"
- }
- },
{
"ID": "5331",
"typeID": "Label",
- "zOrder": "249",
+ "zOrder": "173",
"measuredW": "130",
"measuredH": "25",
"x": "1050",
@@ -4092,7 +2231,7 @@
{
"ID": "5333",
"typeID": "TextArea",
- "zOrder": "250",
+ "zOrder": "174",
"w": "239",
"h": "152",
"measuredW": "200",
@@ -4103,7 +2242,7 @@
{
"ID": "5334",
"typeID": "Label",
- "zOrder": "251",
+ "zOrder": "175",
"measuredW": "111",
"measuredH": "25",
"x": "809",
@@ -4113,60 +2252,6 @@
"text": "Authentication"
}
},
- {
- "ID": "5335",
- "typeID": "TextArea",
- "zOrder": "252",
- "w": "210",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "760",
- "y": "2039",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5336",
- "typeID": "Label",
- "zOrder": "253",
- "measuredW": "155",
- "measuredH": "25",
- "x": "787",
- "y": "2048",
- "properties": {
- "size": "17",
- "text": "{color:blue}Passport.js{color} package"
- }
- },
- {
- "ID": "5337",
- "typeID": "TextArea",
- "zOrder": "254",
- "w": "210",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "760",
- "y": "1989",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5338",
- "typeID": "Label",
- "zOrder": "255",
- "measuredW": "176",
- "measuredH": "25",
- "x": "777",
- "y": "1998",
- "properties": {
- "size": "17",
- "text": "{color:blue}jsonwebtoken{color} package"
- }
- },
{
"ID": "5339",
"typeID": "Arrow",
@@ -4201,7 +2286,7 @@
{
"ID": "5340",
"typeID": "Label",
- "zOrder": "256",
+ "zOrder": "178",
"measuredW": "99",
"measuredH": "25",
"x": "811",
@@ -4211,114 +2296,6 @@
"text": "HTTP Server"
}
},
- {
- "ID": "5343",
- "typeID": "Label",
- "zOrder": "257",
- "measuredW": "91",
- "measuredH": "25",
- "x": "814",
- "y": "1786",
- "properties": {
- "size": "17",
- "text": "{color:blue}http{color} module"
- }
- },
- {
- "ID": "5344",
- "typeID": "Label",
- "zOrder": "259",
- "measuredW": "163",
- "measuredH": "25",
- "x": "778",
- "y": "1736",
- "properties": {
- "size": "17",
- "text": "{color:blue}Express.js{color} framework"
- }
- },
- {
- "ID": "5345",
- "typeID": "Label",
- "zOrder": "260",
- "measuredW": "134",
- "measuredH": "25",
- "x": "793",
- "y": "1686",
- "properties": {
- "size": "17",
- "text": "{color:blue}Nestjs{color} framework"
- }
- },
- {
- "ID": "5346",
- "typeID": "Label",
- "zOrder": "258",
- "measuredW": "130",
- "measuredH": "25",
- "x": "795",
- "y": "1636",
- "properties": {
- "size": "17",
- "text": "{color:blue}fastify{color} framework"
- }
- },
- {
- "ID": "5347",
- "typeID": "TextArea",
- "zOrder": "41",
- "w": "195",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "762",
- "y": "1777",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5348",
- "typeID": "TextArea",
- "zOrder": "40",
- "w": "195",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "762",
- "y": "1727",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5349",
- "typeID": "TextArea",
- "zOrder": "39",
- "w": "195",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "762",
- "y": "1677",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5350",
- "typeID": "TextArea",
- "zOrder": "38",
- "w": "195",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "762",
- "y": "1627",
- "properties": {
- "color": "16770457"
- }
- },
{
"ID": "5351",
"typeID": "TextArea",
@@ -4361,60 +2338,6 @@
}
}
},
- {
- "ID": "5354",
- "typeID": "TextArea",
- "zOrder": "261",
- "w": "279",
- "h": "50",
- "measuredW": "200",
- "measuredH": "140",
- "x": "430",
- "y": "1950",
- "properties": {
- "color": "16776960"
- }
- },
- {
- "ID": "5355",
- "typeID": "Label",
- "zOrder": "262",
- "measuredW": "223",
- "measuredH": "25",
- "x": "458",
- "y": "1962",
- "properties": {
- "size": "17",
- "text": "Keeping Application Running"
- }
- },
- {
- "ID": "5356",
- "typeID": "TextArea",
- "zOrder": "263",
- "w": "199",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "160",
- "y": "1953",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5357",
- "typeID": "Label",
- "zOrder": "264",
- "measuredW": "144",
- "measuredH": "25",
- "x": "188",
- "y": "1962",
- "properties": {
- "size": "17",
- "text": "{color:purple}nodemon{color} package"
- }
- },
{
"ID": "5358",
"typeID": "Arrow",
@@ -4445,33 +2368,6 @@
}
}
},
- {
- "ID": "5360",
- "typeID": "TextArea",
- "zOrder": "265",
- "w": "226",
- "h": "50",
- "measuredW": "200",
- "measuredH": "140",
- "x": "573",
- "y": "2174",
- "properties": {
- "color": "16776960"
- }
- },
- {
- "ID": "5361",
- "typeID": "Label",
- "zOrder": "266",
- "measuredW": "184",
- "measuredH": "25",
- "x": "594",
- "y": "2186",
- "properties": {
- "size": "17",
- "text": "Working with Databases"
- }
- },
{
"ID": "5362",
"typeID": "Arrow",
@@ -4502,114 +2398,6 @@
}
}
},
- {
- "ID": "5363",
- "typeID": "TextArea",
- "zOrder": "267",
- "w": "279",
- "h": "50",
- "measuredW": "200",
- "measuredH": "140",
- "x": "430",
- "y": "2006",
- "properties": {
- "color": "16776960"
- }
- },
- {
- "ID": "5364",
- "typeID": "Label",
- "zOrder": "268",
- "measuredW": "152",
- "measuredH": "25",
- "x": "494",
- "y": "2018",
- "properties": {
- "size": "17",
- "text": "Templating Engines"
- }
- },
- {
- "ID": "5365",
- "typeID": "TextArea",
- "zOrder": "269",
- "w": "56",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "160",
- "y": "2006",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5366",
- "typeID": "Label",
- "zOrder": "270",
- "measuredW": "23",
- "measuredH": "25",
- "x": "176",
- "y": "2015",
- "properties": {
- "size": "17",
- "text": "ejs"
- }
- },
- {
- "ID": "5367",
- "typeID": "TextArea",
- "zOrder": "271",
- "w": "56",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "222",
- "y": "2006",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5368",
- "typeID": "Label",
- "zOrder": "272",
- "measuredW": "30",
- "measuredH": "25",
- "x": "235",
- "y": "2015",
- "properties": {
- "size": "17",
- "text": "pug"
- }
- },
- {
- "ID": "5369",
- "typeID": "TextArea",
- "zOrder": "273",
- "w": "76",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "283",
- "y": "2006",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5370",
- "typeID": "Label",
- "zOrder": "274",
- "measuredW": "48",
- "measuredH": "25",
- "x": "297",
- "y": "2015",
- "properties": {
- "size": "17",
- "text": "marko"
- }
- },
{
"ID": "5371",
"typeID": "Arrow",
@@ -4640,168 +2428,6 @@
}
}
},
- {
- "ID": "5374",
- "typeID": "TextArea",
- "zOrder": "275",
- "w": "122",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "835",
- "y": "2177",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5375",
- "typeID": "Label",
- "zOrder": "276",
- "measuredW": "78",
- "measuredH": "25",
- "x": "857",
- "y": "2186",
- "properties": {
- "size": "17",
- "text": "Relational"
- }
- },
- {
- "ID": "5378",
- "typeID": "TextArea",
- "zOrder": "277",
- "w": "192",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "1029",
- "y": "2215",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5379",
- "typeID": "Label",
- "zOrder": "278",
- "measuredW": "124",
- "measuredH": "25",
- "x": "1063",
- "y": "2224",
- "properties": {
- "size": "17",
- "text": "{color:blue}Prisma{color} package"
- }
- },
- {
- "ID": "5380",
- "typeID": "TextArea",
- "zOrder": "279",
- "w": "192",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "1029",
- "y": "2166",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5381",
- "typeID": "Label",
- "zOrder": "280",
- "measuredW": "147",
- "measuredH": "25",
- "x": "1051",
- "y": "2175",
- "properties": {
- "size": "17",
- "text": "{color:blue}Sequelize{color} package"
- }
- },
- {
- "ID": "5382",
- "typeID": "TextArea",
- "zOrder": "281",
- "w": "192",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "1029",
- "y": "2118",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5383",
- "typeID": "Label",
- "zOrder": "282",
- "measuredW": "147",
- "measuredH": "25",
- "x": "1051",
- "y": "2127",
- "properties": {
- "size": "17",
- "text": "{color:blue}TypeORM{color} package"
- }
- },
- {
- "ID": "5384",
- "typeID": "TextArea",
- "zOrder": "283",
- "w": "192",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "1029",
- "y": "2264",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5385",
- "typeID": "Label",
- "zOrder": "284",
- "measuredW": "109",
- "measuredH": "25",
- "x": "1070",
- "y": "2273",
- "properties": {
- "size": "17",
- "text": "Native Drivers"
- }
- },
- {
- "ID": "5388",
- "typeID": "TextArea",
- "zOrder": "285",
- "w": "128",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "411",
- "y": "2176",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5389",
- "typeID": "Label",
- "zOrder": "286",
- "measuredW": "80",
- "measuredH": "25",
- "x": "435",
- "y": "2185",
- "properties": {
- "size": "17",
- "text": "Document"
- }
- },
{
"ID": "5390",
"typeID": "Arrow",
@@ -4984,87 +2610,6 @@
}
}
},
- {
- "ID": "5402",
- "typeID": "TextArea",
- "zOrder": "287",
- "w": "192",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "161",
- "y": "2176",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5403",
- "typeID": "Label",
- "zOrder": "288",
- "measuredW": "124",
- "measuredH": "25",
- "x": "195",
- "y": "2185",
- "properties": {
- "size": "17",
- "text": "{color:blue}Prisma{color} package"
- }
- },
- {
- "ID": "5404",
- "typeID": "TextArea",
- "zOrder": "289",
- "w": "192",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "161",
- "y": "2127",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5405",
- "typeID": "Label",
- "zOrder": "290",
- "measuredW": "153",
- "measuredH": "25",
- "x": "180",
- "y": "2136",
- "properties": {
- "size": "17",
- "text": "{color:blue}Mongoose{color} package"
- }
- },
- {
- "ID": "5406",
- "typeID": "TextArea",
- "zOrder": "291",
- "w": "192",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "161",
- "y": "2225",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5407",
- "typeID": "Label",
- "zOrder": "292",
- "measuredW": "109",
- "measuredH": "25",
- "x": "202",
- "y": "2234",
- "properties": {
- "size": "17",
- "text": "Native Drivers"
- }
- },
{
"ID": "5408",
"typeID": "Arrow",
@@ -5187,114 +2732,6 @@
}
}
},
- {
- "ID": "5413",
- "typeID": "TextArea",
- "zOrder": "293",
- "w": "207",
- "h": "50",
- "measuredW": "200",
- "measuredH": "140",
- "x": "347",
- "y": "2343",
- "properties": {
- "color": "16776960"
- }
- },
- {
- "ID": "5414",
- "typeID": "Label",
- "zOrder": "294",
- "measuredW": "56",
- "measuredH": "25",
- "x": "423",
- "y": "2355",
- "properties": {
- "size": "17",
- "text": "Testing"
- }
- },
- {
- "ID": "5415",
- "typeID": "TextArea",
- "zOrder": "295",
- "w": "128",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "161",
- "y": "2296",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5416",
- "typeID": "Label",
- "zOrder": "296",
- "measuredW": "33",
- "measuredH": "25",
- "x": "208",
- "y": "2305",
- "properties": {
- "size": "17",
- "text": "Jest"
- }
- },
- {
- "ID": "5417",
- "typeID": "TextArea",
- "zOrder": "297",
- "w": "128",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "161",
- "y": "2346",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5418",
- "typeID": "Label",
- "zOrder": "298",
- "measuredW": "53",
- "measuredH": "25",
- "x": "198",
- "y": "2355",
- "properties": {
- "size": "17",
- "text": "Mocha"
- }
- },
- {
- "ID": "5419",
- "typeID": "TextArea",
- "zOrder": "299",
- "w": "128",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "161",
- "y": "2395",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5420",
- "typeID": "Label",
- "zOrder": "300",
- "measuredW": "63",
- "measuredH": "25",
- "x": "193",
- "y": "2404",
- "properties": {
- "size": "17",
- "text": "Cypress"
- }
- },
{
"ID": "5421",
"typeID": "Arrow",
@@ -5417,87 +2854,6 @@
}
}
},
- {
- "ID": "5427",
- "typeID": "TextArea",
- "zOrder": "301",
- "w": "207",
- "h": "50",
- "measuredW": "200",
- "measuredH": "140",
- "x": "756",
- "y": "2341",
- "properties": {
- "color": "16776960"
- }
- },
- {
- "ID": "5428",
- "typeID": "Label",
- "zOrder": "302",
- "measuredW": "62",
- "measuredH": "25",
- "x": "829",
- "y": "2353",
- "properties": {
- "size": "17",
- "text": "Logging"
- }
- },
- {
- "ID": "5429",
- "typeID": "TextArea",
- "zOrder": "303",
- "w": "168",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "792",
- "y": "2260",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5430",
- "typeID": "Label",
- "zOrder": "304",
- "measuredW": "60",
- "measuredH": "25",
- "x": "846",
- "y": "2269",
- "properties": {
- "size": "17",
- "text": "Morgan"
- }
- },
- {
- "ID": "5431",
- "typeID": "TextArea",
- "zOrder": "305",
- "w": "192",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "1029",
- "y": "2342",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5432",
- "typeID": "Label",
- "zOrder": "306",
- "measuredW": "61",
- "measuredH": "25",
- "x": "1094",
- "y": "2351",
- "properties": {
- "size": "17",
- "text": "Winston"
- }
- },
{
"ID": "5433",
"typeID": "Arrow",
@@ -5559,114 +2915,6 @@
}
}
},
- {
- "ID": "5435",
- "typeID": "TextArea",
- "zOrder": "307",
- "w": "207",
- "h": "50",
- "measuredW": "200",
- "measuredH": "140",
- "x": "757",
- "y": "2397",
- "properties": {
- "color": "16776960"
- }
- },
- {
- "ID": "5436",
- "typeID": "Label",
- "zOrder": "308",
- "measuredW": "168",
- "measuredH": "25",
- "x": "777",
- "y": "2409",
- "properties": {
- "size": "17",
- "text": "Keeping App Running"
- }
- },
- {
- "ID": "5437",
- "typeID": "TextArea",
- "zOrder": "309",
- "w": "192",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "1029",
- "y": "2400",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5438",
- "typeID": "Label",
- "zOrder": "310",
- "measuredW": "105",
- "measuredH": "25",
- "x": "1072",
- "y": "2409",
- "properties": {
- "size": "17",
- "text": "{color:purple}pm2{color} Package"
- }
- },
- {
- "ID": "5439",
- "typeID": "TextArea",
- "zOrder": "311",
- "w": "192",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "1029",
- "y": "2449",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5440",
- "typeID": "Label",
- "zOrder": "312",
- "measuredW": "126",
- "measuredH": "25",
- "x": "1062",
- "y": "2458",
- "properties": {
- "size": "17",
- "text": "{color:purple}forever{color} Package"
- }
- },
- {
- "ID": "5441",
- "typeID": "TextArea",
- "zOrder": "313",
- "w": "192",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "1030",
- "y": "2498",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5442",
- "typeID": "Label",
- "zOrder": "314",
- "measuredW": "48",
- "measuredH": "25",
- "x": "1102",
- "y": "2507",
- "properties": {
- "size": "17",
- "text": "nohup"
- }
- },
{
"ID": "5443",
"typeID": "Arrow",
@@ -5787,114 +3035,6 @@
}
}
},
- {
- "ID": "5447",
- "typeID": "TextArea",
- "zOrder": "315",
- "w": "180",
- "h": "50",
- "measuredW": "200",
- "measuredH": "140",
- "x": "350",
- "y": "2568",
- "properties": {
- "color": "16776960"
- }
- },
- {
- "ID": "5448",
- "typeID": "Label",
- "zOrder": "316",
- "measuredW": "63",
- "measuredH": "25",
- "x": "408",
- "y": "2580",
- "properties": {
- "size": "17",
- "text": "Threads"
- }
- },
- {
- "ID": "5449",
- "typeID": "TextArea",
- "zOrder": "317",
- "w": "156",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "503",
- "y": "2483",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5450",
- "typeID": "Label",
- "zOrder": "318",
- "measuredW": "122",
- "measuredH": "25",
- "x": "520",
- "y": "2492",
- "properties": {
- "size": "17",
- "text": "Worker Threads"
- }
- },
- {
- "ID": "5451",
- "typeID": "TextArea",
- "zOrder": "319",
- "w": "94",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "399",
- "y": "2483",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5452",
- "typeID": "Label",
- "zOrder": "320",
- "measuredW": "56",
- "measuredH": "25",
- "x": "418",
- "y": "2492",
- "properties": {
- "size": "17",
- "text": "Cluster"
- }
- },
- {
- "ID": "5453",
- "typeID": "TextArea",
- "zOrder": "321",
- "w": "147",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "242",
- "y": "2483",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5454",
- "typeID": "Label",
- "zOrder": "322",
- "measuredW": "106",
- "measuredH": "25",
- "x": "264",
- "y": "2492",
- "properties": {
- "size": "17",
- "text": "Child Process"
- }
- },
{
"ID": "5455",
"typeID": "Arrow",
@@ -5988,60 +3128,6 @@
}
}
},
- {
- "ID": "5458",
- "typeID": "TextArea",
- "zOrder": "323",
- "w": "180",
- "h": "50",
- "measuredW": "200",
- "measuredH": "140",
- "x": "350",
- "y": "2624",
- "properties": {
- "color": "16776960"
- }
- },
- {
- "ID": "5459",
- "typeID": "Label",
- "zOrder": "324",
- "measuredW": "64",
- "measuredH": "25",
- "x": "408",
- "y": "2636",
- "properties": {
- "size": "17",
- "text": "Streams"
- }
- },
- {
- "ID": "5460",
- "typeID": "TextArea",
- "zOrder": "325",
- "w": "263",
- "h": "50",
- "measuredW": "200",
- "measuredH": "140",
- "x": "629",
- "y": "2624",
- "properties": {
- "color": "16776960"
- }
- },
- {
- "ID": "5461",
- "typeID": "Label",
- "zOrder": "326",
- "measuredW": "130",
- "measuredH": "25",
- "x": "696",
- "y": "2636",
- "properties": {
- "size": "17",
- "text": "More Debugging"
- }
- },
{
"ID": "5462",
"typeID": "Arrow",
@@ -6072,87 +3158,6 @@
}
}
},
- {
- "ID": "5463",
- "typeID": "TextArea",
- "zOrder": "327",
- "w": "216",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "1007",
- "y": "2622",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5464",
- "typeID": "Label",
- "zOrder": "328",
- "measuredW": "112",
- "measuredH": "25",
- "x": "1059",
- "y": "2631",
- "properties": {
- "size": "17",
- "text": "Memory Leaks"
- }
- },
- {
- "ID": "5465",
- "typeID": "TextArea",
- "zOrder": "329",
- "w": "214",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "1008",
- "y": "2560",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5466",
- "typeID": "Label",
- "zOrder": "330",
- "measuredW": "149",
- "measuredH": "25",
- "x": "1040",
- "y": "2569",
- "properties": {
- "size": "17",
- "text": "Garbage Collection"
- }
- },
- {
- "ID": "5469",
- "typeID": "TextArea",
- "zOrder": "331",
- "w": "192",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "1030",
- "y": "2067",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5470",
- "typeID": "Label",
- "zOrder": "332",
- "measuredW": "110",
- "measuredH": "25",
- "x": "1071",
- "y": "2076",
- "properties": {
- "size": "17",
- "text": "{color:blue}Knex{color} package"
- }
- },
{
"ID": "5471",
"typeID": "Arrow",
@@ -6183,60 +3188,6 @@
}
}
},
- {
- "ID": "5472",
- "typeID": "TextArea",
- "zOrder": "333",
- "w": "214",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "1008",
- "y": "2672",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5473",
- "typeID": "Label",
- "zOrder": "334",
- "measuredW": "112",
- "measuredH": "25",
- "x": "1059",
- "y": "2681",
- "properties": {
- "size": "17",
- "text": "{color:purple}node --inspect{color}"
- }
- },
- {
- "ID": "5474",
- "typeID": "TextArea",
- "zOrder": "335",
- "w": "214",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "1008",
- "y": "2722",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5475",
- "typeID": "Label",
- "zOrder": "336",
- "measuredW": "85",
- "measuredH": "25",
- "x": "1072",
- "y": "2731",
- "properties": {
- "size": "17",
- "text": "Using APM"
- }
- },
{
"ID": "5476",
"typeID": "Arrow",
@@ -6358,33 +3309,6 @@
}
}
},
- {
- "ID": "5817",
- "typeID": "TextArea",
- "zOrder": "337",
- "w": "265",
- "h": "50",
- "measuredW": "200",
- "measuredH": "140",
- "x": "629",
- "y": "2682",
- "properties": {
- "color": "16776960"
- }
- },
- {
- "ID": "5818",
- "typeID": "Label",
- "zOrder": "338",
- "measuredW": "198",
- "measuredH": "25",
- "x": "663",
- "y": "2694",
- "properties": {
- "size": "17",
- "text": "Common Built-in Modules"
- }
- },
{
"ID": "5820",
"typeID": "Arrow",
@@ -6416,408 +3340,6 @@
"stroke": "dotted"
}
},
- {
- "ID": "5821",
- "typeID": "TextArea",
- "zOrder": "339",
- "w": "178",
- "h": "441",
- "measuredW": "200",
- "measuredH": "140",
- "x": "161",
- "y": "2568"
- },
- {
- "ID": "5822",
- "typeID": "TextArea",
- "zOrder": "340",
- "w": "47",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "172",
- "y": "2580",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5823",
- "typeID": "Label",
- "zOrder": "341",
- "measuredW": "14",
- "measuredH": "25",
- "x": "189",
- "y": "2589",
- "properties": {
- "size": "17",
- "text": "fs"
- }
- },
- {
- "ID": "5824",
- "typeID": "TextArea",
- "zOrder": "342",
- "w": "43",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "223",
- "y": "2580",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5825",
- "typeID": "Label",
- "zOrder": "343",
- "measuredW": "19",
- "measuredH": "25",
- "x": "235",
- "y": "2589",
- "properties": {
- "size": "17",
- "text": "os"
- }
- },
- {
- "ID": "5826",
- "typeID": "TextArea",
- "zOrder": "344",
- "w": "86",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "170",
- "y": "2629",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5827",
- "typeID": "Label",
- "zOrder": "345",
- "measuredW": "35",
- "measuredH": "25",
- "x": "195",
- "y": "2638",
- "properties": {
- "size": "17",
- "text": "path"
- }
- },
- {
- "ID": "5828",
- "typeID": "TextArea",
- "zOrder": "346",
- "w": "68",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "261",
- "y": "2629",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5829",
- "typeID": "Label",
- "zOrder": "347",
- "measuredW": "20",
- "measuredH": "25",
- "x": "285",
- "y": "2638",
- "properties": {
- "size": "17",
- "text": "url"
- }
- },
- {
- "ID": "5830",
- "typeID": "TextArea",
- "zOrder": "348",
- "w": "85",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "170",
- "y": "2678",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5831",
- "typeID": "Label",
- "zOrder": "349",
- "measuredW": "52",
- "measuredH": "25",
- "x": "187",
- "y": "2687",
- "properties": {
- "size": "17",
- "text": "events"
- }
- },
- {
- "ID": "5832",
- "typeID": "TextArea",
- "zOrder": "350",
- "w": "69",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "260",
- "y": "2678",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5833",
- "typeID": "Label",
- "zOrder": "351",
- "measuredW": "30",
- "measuredH": "25",
- "x": "280",
- "y": "2687",
- "properties": {
- "size": "17",
- "text": "http"
- }
- },
- {
- "ID": "5834",
- "typeID": "TextArea",
- "zOrder": "352",
- "w": "81",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "170",
- "y": "2726",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5835",
- "typeID": "Label",
- "zOrder": "353",
- "measuredW": "61",
- "measuredH": "25",
- "x": "180",
- "y": "2735",
- "properties": {
- "size": "17",
- "text": "console"
- }
- },
- {
- "ID": "5836",
- "typeID": "TextArea",
- "zOrder": "354",
- "w": "73",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "256",
- "y": "2726",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5837",
- "typeID": "Label",
- "zOrder": "355",
- "measuredW": "49",
- "measuredH": "25",
- "x": "268",
- "y": "2735",
- "properties": {
- "size": "17",
- "text": "assert"
- }
- },
- {
- "ID": "5838",
- "typeID": "TextArea",
- "zOrder": "356",
- "w": "81",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "170",
- "y": "2775",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5839",
- "typeID": "Label",
- "zOrder": "357",
- "measuredW": "62",
- "measuredH": "25",
- "x": "180",
- "y": "2784",
- "properties": {
- "size": "17",
- "text": "process"
- }
- },
- {
- "ID": "5842",
- "typeID": "TextArea",
- "zOrder": "358",
- "w": "73",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "256",
- "y": "2776",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5843",
- "typeID": "Label",
- "zOrder": "359",
- "measuredW": "52",
- "measuredH": "25",
- "x": "267",
- "y": "2785",
- "properties": {
- "size": "17",
- "text": "cluster"
- }
- },
- {
- "ID": "5844",
- "typeID": "TextArea",
- "zOrder": "360",
- "w": "159",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "170",
- "y": "2825",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5845",
- "typeID": "Label",
- "zOrder": "361",
- "measuredW": "88",
- "measuredH": "25",
- "x": "206",
- "y": "2834",
- "properties": {
- "size": "17",
- "text": "perf_hooks"
- }
- },
- {
- "ID": "5846",
- "typeID": "TextArea",
- "zOrder": "362",
- "w": "159",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "170",
- "y": "2873",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5847",
- "typeID": "Label",
- "zOrder": "363",
- "measuredW": "48",
- "measuredH": "25",
- "x": "226",
- "y": "2882",
- "properties": {
- "size": "17",
- "text": "crypto"
- }
- },
- {
- "ID": "5848",
- "typeID": "TextArea",
- "zOrder": "364",
- "w": "159",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "170",
- "y": "2921",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5849",
- "typeID": "Label",
- "zOrder": "365",
- "measuredW": "46",
- "measuredH": "25",
- "x": "227",
- "y": "2930",
- "properties": {
- "size": "17",
- "text": "Buffer"
- }
- },
- {
- "ID": "5850",
- "typeID": "TextArea",
- "zOrder": "366",
- "w": "57",
- "h": "44",
- "measuredW": "200",
- "measuredH": "140",
- "x": "272",
- "y": "2580",
- "properties": {
- "color": "16770457"
- }
- },
- {
- "ID": "5851",
- "typeID": "Label",
- "zOrder": "367",
- "measuredW": "25",
- "measuredH": "25",
- "x": "288",
- "y": "2589",
- "properties": {
- "size": "17",
- "text": "net"
- }
- },
- {
- "ID": "5853",
- "typeID": "Label",
- "zOrder": "368",
- "measuredW": "125",
- "measuredH": "25",
- "x": "187",
- "y": "2973",
- "properties": {
- "size": "17",
- "text": "Built-in Modules"
- }
- },
{
"ID": "5858",
"typeID": "Arrow",
@@ -6882,7 +3404,7 @@
{
"ID": "5860",
"typeID": "__group__",
- "zOrder": "96",
+ "zOrder": "95",
"measuredW": "374",
"measuredH": "50",
"w": "374",
@@ -6931,7 +3453,7 @@
{
"ID": "5861",
"typeID": "__group__",
- "zOrder": "98",
+ "zOrder": "97",
"measuredW": "374",
"measuredH": "50",
"w": "374",
@@ -6980,7 +3502,7 @@
{
"ID": "5862",
"typeID": "__group__",
- "zOrder": "369",
+ "zOrder": "219",
"measuredW": "374",
"measuredH": "50",
"w": "374",
@@ -7025,6 +3547,8653 @@
]
}
}
+ },
+ {
+ "ID": "5892",
+ "typeID": "__group__",
+ "zOrder": "220",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "1209",
+ "y": "1267",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5898",
+ "typeID": "__group__",
+ "zOrder": "221",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "136",
+ "y": "1565",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "10027263"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5911",
+ "typeID": "__group__",
+ "zOrder": "222",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "740",
+ "y": "1852",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5914",
+ "typeID": "__group__",
+ "zOrder": "223",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "1207",
+ "y": "1974",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5915",
+ "typeID": "__group__",
+ "zOrder": "224",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "737",
+ "y": "2109",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5928",
+ "typeID": "__group__",
+ "zOrder": "98",
+ "measuredW": "374",
+ "measuredH": "50",
+ "w": "374",
+ "h": "50",
+ "x": "520",
+ "y": "522",
+ "properties": {
+ "controlName": "100-nodejs-introduction"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "374",
+ "h": "50",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16776960"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "174",
+ "measuredH": "25",
+ "x": "100",
+ "y": "12",
+ "properties": {
+ "size": "17",
+ "text": "Introduction to Node.js"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5929",
+ "typeID": "__group__",
+ "zOrder": "86",
+ "measuredW": "249",
+ "measuredH": "44",
+ "w": "249",
+ "h": "44",
+ "x": "134",
+ "y": "476",
+ "properties": {
+ "controlName": "100-nodejs-introduction:what-is-nodejs"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "238",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "11",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "127",
+ "measuredH": "25",
+ "x": "66",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "What is Node.js?"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "0",
+ "y": "9",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5930",
+ "typeID": "__group__",
+ "zOrder": "103",
+ "measuredW": "183",
+ "measuredH": "50",
+ "w": "183",
+ "h": "50",
+ "x": "417",
+ "y": "678",
+ "properties": {
+ "controlName": "101-nodejs-modules"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "183",
+ "h": "50",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16776960"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "66",
+ "measuredH": "25",
+ "x": "59",
+ "y": "12",
+ "properties": {
+ "size": "17",
+ "text": "Modules"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5931",
+ "typeID": "__group__",
+ "zOrder": "106",
+ "measuredW": "199",
+ "measuredH": "50",
+ "w": "199",
+ "h": "50",
+ "x": "658",
+ "y": "847",
+ "properties": {
+ "controlName": "102-nodejs-npm"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "199",
+ "h": "50",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16776960"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "34",
+ "measuredH": "25",
+ "x": "83",
+ "y": "12",
+ "properties": {
+ "size": "17",
+ "text": "npm"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5932",
+ "typeID": "__group__",
+ "zOrder": "114",
+ "measuredW": "211",
+ "measuredH": "50",
+ "w": "211",
+ "h": "50",
+ "x": "658",
+ "y": "1024",
+ "properties": {
+ "controlName": "103-nodejs-error-handling"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "199",
+ "h": "50",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16776960"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "113",
+ "measuredH": "25",
+ "x": "43",
+ "y": "12",
+ "properties": {
+ "size": "17",
+ "text": "Error Handling"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "187",
+ "y": "13",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5933",
+ "typeID": "__group__",
+ "zOrder": "124",
+ "measuredW": "257",
+ "measuredH": "50",
+ "w": "257",
+ "h": "50",
+ "x": "408",
+ "y": "1303",
+ "properties": {
+ "controlName": "104-nodejs-async-programming"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "257",
+ "h": "50",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16776960"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "215",
+ "measuredH": "25",
+ "x": "21",
+ "y": "12",
+ "properties": {
+ "size": "17",
+ "text": "Asynchronous Programming"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5934",
+ "typeID": "__group__",
+ "zOrder": "136",
+ "measuredW": "310",
+ "measuredH": "50",
+ "w": "310",
+ "h": "50",
+ "x": "764",
+ "y": "1313",
+ "properties": {
+ "controlName": "105-nodejs-working-with-files"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "298",
+ "h": "50",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16776960"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "138",
+ "measuredH": "25",
+ "x": "80",
+ "y": "12",
+ "properties": {
+ "size": "17",
+ "text": "Working with Files"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "286",
+ "y": "14",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5935",
+ "typeID": "__group__",
+ "zOrder": "148",
+ "measuredW": "252",
+ "measuredH": "50",
+ "w": "252",
+ "h": "50",
+ "x": "699",
+ "y": "1537",
+ "properties": {
+ "controlName": "106-nodejs-command-line-apps"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "243",
+ "h": "50",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16776960"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "160",
+ "measuredH": "25",
+ "x": "42",
+ "y": "12",
+ "properties": {
+ "size": "17",
+ "text": "Command Line Apps"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "228",
+ "y": "13",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5936",
+ "typeID": "__group__",
+ "zOrder": "167",
+ "measuredW": "287",
+ "measuredH": "50",
+ "w": "287",
+ "h": "50",
+ "x": "422",
+ "y": "1895",
+ "properties": {
+ "controlName": "107-nodejs-apis"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "279",
+ "h": "50",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "8",
+ "y": "0",
+ "properties": {
+ "color": "16776960"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "136",
+ "measuredH": "25",
+ "x": "80",
+ "y": "12",
+ "properties": {
+ "size": "17",
+ "text": "Working with APIs"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "0",
+ "y": "12",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5937",
+ "typeID": "__group__",
+ "zOrder": "179",
+ "measuredW": "289",
+ "measuredH": "50",
+ "w": "289",
+ "h": "50",
+ "x": "430",
+ "y": "1950",
+ "properties": {
+ "controlName": "108-nodejs-keep-app-running"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "279",
+ "h": "50",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16776960"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "223",
+ "measuredH": "25",
+ "x": "28",
+ "y": "12",
+ "properties": {
+ "size": "17",
+ "text": "Keeping Application Running"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "265",
+ "y": "13",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5938",
+ "typeID": "__group__",
+ "zOrder": "182",
+ "measuredW": "289",
+ "measuredH": "50",
+ "w": "289",
+ "h": "50",
+ "x": "430",
+ "y": "2006",
+ "properties": {
+ "controlName": "109-nodejs-template-engines"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "279",
+ "h": "50",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16776960"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "152",
+ "measuredH": "25",
+ "x": "64",
+ "y": "12",
+ "properties": {
+ "size": "17",
+ "text": "Templating Engines"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "265",
+ "y": "13",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5939",
+ "typeID": "__group__",
+ "zOrder": "181",
+ "measuredW": "234",
+ "measuredH": "57",
+ "w": "234",
+ "h": "57",
+ "x": "573",
+ "y": "2167",
+ "properties": {
+ "controlName": "110-nodejs-databases"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "226",
+ "h": "50",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "7",
+ "properties": {
+ "color": "16776960"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "184",
+ "measuredH": "25",
+ "x": "21",
+ "y": "19",
+ "properties": {
+ "size": "17",
+ "text": "Working with Databases"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "210",
+ "y": "0",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5940",
+ "typeID": "__group__",
+ "zOrder": "195",
+ "measuredW": "215",
+ "measuredH": "50",
+ "w": "215",
+ "h": "50",
+ "x": "339",
+ "y": "2343",
+ "properties": {
+ "controlName": "111-nodejs-testing"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "207",
+ "h": "50",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "8",
+ "y": "0",
+ "properties": {
+ "color": "16776960"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "56",
+ "measuredH": "25",
+ "x": "84",
+ "y": "12",
+ "properties": {
+ "size": "17",
+ "text": "Testing"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "0",
+ "y": "13",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5941",
+ "typeID": "__group__",
+ "zOrder": "199",
+ "measuredW": "218",
+ "measuredH": "50",
+ "w": "218",
+ "h": "50",
+ "x": "756",
+ "y": "2341",
+ "properties": {
+ "controlName": "112-nodejs-logging"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "207",
+ "h": "50",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16776960"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "62",
+ "measuredH": "25",
+ "x": "73",
+ "y": "12",
+ "properties": {
+ "size": "17",
+ "text": "Logging"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "194",
+ "y": "15",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5942",
+ "typeID": "__group__",
+ "zOrder": "202",
+ "measuredW": "217",
+ "measuredH": "50",
+ "w": "217",
+ "h": "50",
+ "x": "747",
+ "y": "2397",
+ "properties": {
+ "controlName": "113-nodejs-keep-app-running-prod"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "207",
+ "h": "50",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "10",
+ "y": "0",
+ "properties": {
+ "color": "16776960"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "168",
+ "measuredH": "25",
+ "x": "30",
+ "y": "12",
+ "properties": {
+ "size": "17",
+ "text": "Keeping App Running"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "0",
+ "y": "13",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "10027263"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5943",
+ "typeID": "__group__",
+ "zOrder": "206",
+ "measuredW": "190",
+ "measuredH": "50",
+ "w": "190",
+ "h": "50",
+ "x": "340",
+ "y": "2568",
+ "properties": {
+ "controlName": "114-nodejs-threads"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "180",
+ "h": "50",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "10",
+ "y": "0",
+ "properties": {
+ "color": "16776960"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "63",
+ "measuredH": "25",
+ "x": "68",
+ "y": "12",
+ "properties": {
+ "size": "17",
+ "text": "Threads"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "0",
+ "y": "12",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5944",
+ "typeID": "__group__",
+ "zOrder": "210",
+ "measuredW": "190",
+ "measuredH": "50",
+ "w": "190",
+ "h": "50",
+ "x": "340",
+ "y": "2624",
+ "properties": {
+ "controlName": "115-nodejs-streams"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "180",
+ "h": "50",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "10",
+ "y": "0",
+ "properties": {
+ "color": "16776960"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "64",
+ "measuredH": "25",
+ "x": "66",
+ "y": "13",
+ "properties": {
+ "size": "17",
+ "text": "Streams"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "0",
+ "y": "12",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5945",
+ "typeID": "__group__",
+ "zOrder": "211",
+ "measuredW": "273",
+ "measuredH": "57",
+ "w": "273",
+ "h": "57",
+ "x": "629",
+ "y": "2617",
+ "properties": {
+ "controlName": "116-nodejs-more-debugging"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "263",
+ "h": "50",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "7",
+ "properties": {
+ "color": "16776960"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "130",
+ "measuredH": "25",
+ "x": "67",
+ "y": "19",
+ "properties": {
+ "size": "17",
+ "text": "More Debugging"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "249",
+ "y": "0",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5946",
+ "typeID": "__group__",
+ "zOrder": "217",
+ "measuredW": "274",
+ "measuredH": "50",
+ "w": "274",
+ "h": "50",
+ "x": "620",
+ "y": "2682",
+ "properties": {
+ "controlName": "117-nodejs-common-modules"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "265",
+ "h": "50",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "9",
+ "y": "0",
+ "properties": {
+ "color": "16776960"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "198",
+ "measuredH": "25",
+ "x": "43",
+ "y": "12",
+ "properties": {
+ "size": "17",
+ "text": "Common Built-in Modules"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "0",
+ "y": "13",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "10027263"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5947",
+ "typeID": "__group__",
+ "zOrder": "99",
+ "measuredW": "249",
+ "measuredH": "44",
+ "w": "249",
+ "h": "44",
+ "x": "134",
+ "y": "526",
+ "properties": {
+ "controlName": "101-nodejs-introduction:why-nodejs"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "238",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "11",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "134",
+ "measuredH": "25",
+ "x": "63",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Why use Node.js?"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "0",
+ "y": "9",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5948",
+ "typeID": "__group__",
+ "zOrder": "100",
+ "measuredW": "249",
+ "measuredH": "44",
+ "w": "249",
+ "h": "44",
+ "x": "134",
+ "y": "575",
+ "properties": {
+ "controlName": "102-nodejs-introduction:history-of-nodejs"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "238",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "11",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "134",
+ "measuredH": "25",
+ "x": "63",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "History of Node.js"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "0",
+ "y": "10",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5949",
+ "typeID": "__group__",
+ "zOrder": "101",
+ "measuredW": "247",
+ "measuredH": "44",
+ "w": "247",
+ "h": "44",
+ "x": "985",
+ "y": "498",
+ "properties": {
+ "controlName": "103-nodejs-introduction:nodejs-vs-browser"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "238",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "147",
+ "measuredH": "25",
+ "x": "45",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Node.js vs Browser"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "223",
+ "y": "10",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5950",
+ "typeID": "__group__",
+ "zOrder": "102",
+ "measuredW": "247",
+ "measuredH": "44",
+ "w": "247",
+ "h": "44",
+ "x": "985",
+ "y": "548",
+ "properties": {
+ "controlName": "104-nodejs-introduction:running-nodejs-code"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "238",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "w": "174",
+ "measuredW": "173",
+ "measuredH": "25",
+ "x": "33",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Running Node.js Code"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "223",
+ "y": "10",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5951",
+ "typeID": "__group__",
+ "zOrder": "80",
+ "measuredW": "222",
+ "measuredH": "162",
+ "w": "222",
+ "h": "162",
+ "x": "134",
+ "y": "639",
+ "properties": {
+ "controlName": "100-nodejs-modules:commonjs-vs-esm"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "211",
+ "h": "155",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "11",
+ "y": "0"
+ },
+ {
+ "ID": "1",
+ "typeID": "TextArea",
+ "zOrder": "1",
+ "w": "180",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "27",
+ "y": "16",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Label",
+ "zOrder": "2",
+ "measuredW": "93",
+ "measuredH": "25",
+ "x": "70",
+ "y": "25",
+ "properties": {
+ "size": "17",
+ "text": "Common JS"
+ }
+ },
+ {
+ "ID": "3",
+ "typeID": "TextArea",
+ "zOrder": "3",
+ "w": "180",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "27",
+ "y": "65",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "4",
+ "typeID": "Label",
+ "zOrder": "4",
+ "measuredW": "37",
+ "measuredH": "25",
+ "x": "98",
+ "y": "74",
+ "properties": {
+ "size": "17",
+ "text": "ESM"
+ }
+ },
+ {
+ "ID": "5",
+ "typeID": "Label",
+ "zOrder": "5",
+ "measuredW": "137",
+ "measuredH": "25",
+ "x": "48",
+ "y": "119",
+ "properties": {
+ "size": "17",
+ "text": "Common Formats"
+ }
+ },
+ {
+ "ID": "6",
+ "typeID": "__group__",
+ "zOrder": "6",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "0",
+ "y": "138",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5952",
+ "typeID": "__group__",
+ "zOrder": "104",
+ "measuredW": "270",
+ "measuredH": "44",
+ "w": "270",
+ "h": "44",
+ "x": "674",
+ "y": "655",
+ "properties": {
+ "controlName": "101-nodejs-modules:custom-modules"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "262",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "200",
+ "measuredH": "25",
+ "x": "31",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Creating Custom Modules"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "246",
+ "y": "10",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5953",
+ "typeID": "__group__",
+ "zOrder": "105",
+ "measuredW": "270",
+ "measuredH": "44",
+ "w": "270",
+ "h": "44",
+ "x": "674",
+ "y": "706",
+ "properties": {
+ "controlName": "102-nodejs-modules:global-keyword"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "262",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "116",
+ "measuredH": "25",
+ "x": "73",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "[global] Keyword"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "246",
+ "y": "8",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5954",
+ "typeID": "__group__",
+ "zOrder": "111",
+ "measuredW": "130",
+ "measuredH": "44",
+ "w": "130",
+ "h": "44",
+ "x": "727",
+ "y": "774",
+ "properties": {
+ "controlName": "100-nodejs-npm:npx"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "120",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "10",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "27",
+ "measuredH": "25",
+ "x": "56",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "npx"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "0",
+ "y": "10",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5955",
+ "typeID": "__group__",
+ "zOrder": "107",
+ "measuredW": "247",
+ "measuredH": "162",
+ "w": "247",
+ "h": "162",
+ "x": "985",
+ "y": "612",
+ "properties": {
+ "controlName": "101-nodejs-npm:global-install-vs-local-install"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "239",
+ "h": "156",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0"
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "149",
+ "measuredH": "25",
+ "x": "53",
+ "y": "117",
+ "properties": {
+ "size": "17",
+ "text": "Installing Packages"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "TextArea",
+ "zOrder": "2",
+ "w": "209",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "14",
+ "y": "63",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "3",
+ "typeID": "Label",
+ "zOrder": "3",
+ "measuredW": "130",
+ "measuredH": "25",
+ "x": "54",
+ "y": "72",
+ "properties": {
+ "size": "17",
+ "text": "Local Installation"
+ }
+ },
+ {
+ "ID": "4",
+ "typeID": "TextArea",
+ "zOrder": "4",
+ "w": "209",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "14",
+ "y": "14",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "5",
+ "typeID": "Label",
+ "zOrder": "5",
+ "measuredW": "138",
+ "measuredH": "25",
+ "x": "50",
+ "y": "23",
+ "properties": {
+ "size": "17",
+ "text": "Global Installation"
+ }
+ },
+ {
+ "ID": "6",
+ "typeID": "__group__",
+ "zOrder": "6",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "223",
+ "y": "138",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5956",
+ "typeID": "__group__",
+ "zOrder": "108",
+ "measuredW": "249",
+ "measuredH": "44",
+ "w": "249",
+ "h": "44",
+ "x": "985",
+ "y": "786",
+ "properties": {
+ "controlName": "102-nodejs-npm:updating-packages"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "239",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "150",
+ "measuredH": "25",
+ "x": "45",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Updating Packages"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "225",
+ "y": "10",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5957",
+ "typeID": "__group__",
+ "zOrder": "109",
+ "measuredW": "250",
+ "measuredH": "44",
+ "w": "250",
+ "h": "44",
+ "x": "984",
+ "y": "836",
+ "properties": {
+ "controlName": "103-nodejs-npm:using-packages"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "239",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "194",
+ "measuredH": "25",
+ "x": "24",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Using Installed Packages"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "226",
+ "y": "10",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5958",
+ "typeID": "__group__",
+ "zOrder": "110",
+ "measuredW": "250",
+ "measuredH": "44",
+ "w": "250",
+ "h": "44",
+ "x": "984",
+ "y": "886",
+ "properties": {
+ "controlName": "104-nodejs-npm:running-scripts"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "239",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "122",
+ "measuredH": "25",
+ "x": "59",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Running Scripts"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "226",
+ "y": "10",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5959",
+ "typeID": "__group__",
+ "zOrder": "112",
+ "measuredW": "248",
+ "measuredH": "44",
+ "w": "248",
+ "h": "44",
+ "x": "984",
+ "y": "936",
+ "properties": {
+ "controlName": "105-nodejs-npm:npm-workspaces"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "239",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "129",
+ "measuredH": "25",
+ "x": "55",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "npm workspaces"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "224",
+ "y": "10",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5960",
+ "typeID": "__group__",
+ "zOrder": "113",
+ "measuredW": "383",
+ "measuredH": "93",
+ "w": "383",
+ "h": "93",
+ "x": "155",
+ "y": "835",
+ "properties": {
+ "controlName": "106-nodejs-npm:creating-packages"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "259",
+ "h": "49",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "114",
+ "y": "17"
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "146",
+ "measuredH": "25",
+ "x": "200",
+ "y": "29",
+ "properties": {
+ "size": "17",
+ "text": "Creating Packages"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "TextArea",
+ "zOrder": "2",
+ "w": "184",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "3",
+ "typeID": "Label",
+ "zOrder": "3",
+ "measuredW": "133",
+ "measuredH": "25",
+ "x": "25",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Private Packages"
+ }
+ },
+ {
+ "ID": "4",
+ "typeID": "TextArea",
+ "zOrder": "4",
+ "w": "184",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "49",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "5",
+ "typeID": "Label",
+ "zOrder": "5",
+ "measuredW": "126",
+ "measuredH": "25",
+ "x": "29",
+ "y": "58",
+ "properties": {
+ "size": "17",
+ "text": "Public Packages"
+ }
+ },
+ {
+ "ID": "6",
+ "typeID": "__group__",
+ "zOrder": "6",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "359",
+ "y": "31",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5961",
+ "typeID": "__group__",
+ "zOrder": "120",
+ "measuredW": "248",
+ "measuredH": "44",
+ "w": "248",
+ "h": "44",
+ "x": "984",
+ "y": "1002",
+ "properties": {
+ "controlName": "100-nodejs-error-handling:stack-trace"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "239",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "187",
+ "measuredH": "25",
+ "x": "26",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Call Stack & Stack Trace"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "224",
+ "y": "11",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "10027263"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5962",
+ "typeID": "__group__",
+ "zOrder": "122",
+ "measuredW": "249",
+ "measuredH": "44",
+ "w": "249",
+ "h": "44",
+ "x": "983",
+ "y": "1052",
+ "properties": {
+ "controlName": "101-nodejs-error-handling:using-debugger"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "239",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "127",
+ "measuredH": "25",
+ "x": "56",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Using Debugger"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "225",
+ "y": "10",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "10027263"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5963",
+ "typeID": "__group__",
+ "zOrder": "121",
+ "measuredW": "216",
+ "measuredH": "44",
+ "w": "216",
+ "h": "44",
+ "x": "399",
+ "y": "937",
+ "properties": {
+ "controlName": "102-nodejs-error-handling:uncaught-exceptions"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "206",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "10",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "164",
+ "measuredH": "25",
+ "x": "31",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Uncaught Exceptions"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "0",
+ "y": "9",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5964",
+ "typeID": "__group__",
+ "zOrder": "115",
+ "measuredW": "169",
+ "measuredH": "44",
+ "w": "169",
+ "h": "44",
+ "x": "419",
+ "y": "1027",
+ "properties": {
+ "controlName": "103-nodejs-error-handling:error-types"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "169",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "117",
+ "measuredH": "25",
+ "x": "26",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Types of Errors"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5965",
+ "typeID": "__group__",
+ "zOrder": "123",
+ "measuredW": "216",
+ "measuredH": "44",
+ "w": "216",
+ "h": "44",
+ "x": "399",
+ "y": "1115",
+ "properties": {
+ "controlName": "104-nodejs-error-handling:async-errors"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "206",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "10",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "170",
+ "measuredH": "25",
+ "x": "30",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Handling Async Errors"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "0",
+ "y": "9",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "10027263"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5966",
+ "typeID": "__group__",
+ "zOrder": "116",
+ "measuredW": "222",
+ "measuredH": "44",
+ "w": "222",
+ "h": "44",
+ "x": "134",
+ "y": "958",
+ "properties": {
+ "controlName": "100-nodejs-error-handling:error-types:javascript-errors"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "211",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "11",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "133",
+ "measuredH": "25",
+ "x": "50",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "JavaScript Errors"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "0",
+ "y": "10",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5967",
+ "typeID": "__group__",
+ "zOrder": "117",
+ "measuredW": "222",
+ "measuredH": "44",
+ "w": "222",
+ "h": "44",
+ "x": "134",
+ "y": "1007",
+ "properties": {
+ "controlName": "101-nodejs-error-handling:error-types:system-errors"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "211",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "11",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "108",
+ "measuredH": "25",
+ "x": "63",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "System Errors"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "0",
+ "y": "10",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5968",
+ "typeID": "__group__",
+ "zOrder": "118",
+ "measuredW": "222",
+ "measuredH": "44",
+ "w": "222",
+ "h": "44",
+ "x": "134",
+ "y": "1056",
+ "properties": {
+ "controlName": "102-nodejs-error-handling:error-types:user-specified-errors"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "211",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "11",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "165",
+ "measuredH": "25",
+ "x": "34",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "User Specified Errors"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "0",
+ "y": "10",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5969",
+ "typeID": "__group__",
+ "zOrder": "119",
+ "measuredW": "222",
+ "measuredH": "44",
+ "w": "222",
+ "h": "44",
+ "x": "134",
+ "y": "1106",
+ "properties": {
+ "controlName": "103-nodejs-error-handling:error-types:assertion-errors"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "211",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "11",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "124",
+ "measuredH": "25",
+ "x": "55",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Assertion Errors"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "0",
+ "y": "10",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5970",
+ "typeID": "__group__",
+ "zOrder": "134",
+ "measuredW": "177",
+ "measuredH": "44",
+ "w": "177",
+ "h": "44",
+ "x": "399",
+ "y": "1236",
+ "properties": {
+ "controlName": "100-nodejs-async-programming:event-loop"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "166",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "11",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "88",
+ "measuredH": "25",
+ "x": "50",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Event Loop"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "0",
+ "y": "10",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ }
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5971",
+ "typeID": "__group__",
+ "zOrder": "135",
+ "measuredW": "177",
+ "measuredH": "44",
+ "w": "177",
+ "h": "44",
+ "x": "399",
+ "y": "1187",
+ "properties": {
+ "controlName": "101-nodejs-async-programming:event-emitter"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "166",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "11",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "105",
+ "measuredH": "25",
+ "x": "41",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Event Emitter"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "0",
+ "y": "8",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Icon",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "10027263"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5972",
+ "typeID": "__group__",
+ "zOrder": "143",
+ "measuredW": "154",
+ "measuredH": "44",
+ "w": "154",
+ "h": "44",
+ "x": "787",
+ "y": "1239",
+ "properties": {
+ "controlName": "100-nodejs-working-with-files:fs-module"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "142",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "12",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "75",
+ "measuredH": "25",
+ "x": "45",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:purple}fs{color} module"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "0",
+ "y": "10",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5973",
+ "typeID": "__group__",
+ "zOrder": "144",
+ "measuredW": "154",
+ "measuredH": "44",
+ "w": "154",
+ "h": "44",
+ "x": "787",
+ "y": "1189",
+ "properties": {
+ "controlName": "101-nodejs-working-with-files:path-module"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "142",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "12",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "96",
+ "measuredH": "25",
+ "x": "35",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:purple}path{color} module"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "0",
+ "y": "10",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5974",
+ "typeID": "__group__",
+ "zOrder": "147",
+ "measuredW": "155",
+ "measuredH": "44",
+ "w": "155",
+ "h": "44",
+ "x": "786",
+ "y": "1139",
+ "properties": {
+ "controlName": "102-nodejs-working-with-files:process-cwd"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "142",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "13",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "108",
+ "measuredH": "25",
+ "x": "33",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:purple}process.cwd(){color}"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "0",
+ "y": "9",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5975",
+ "typeID": "__group__",
+ "zOrder": "139",
+ "measuredW": "104",
+ "measuredH": "44",
+ "w": "104",
+ "h": "44",
+ "x": "986",
+ "y": "1135",
+ "properties": {
+ "controlName": "103-nodejs-working-with-files:glob"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "104",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "33",
+ "measuredH": "25",
+ "x": "35",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "glob"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5976",
+ "typeID": "__group__",
+ "zOrder": "140",
+ "measuredW": "112",
+ "measuredH": "44",
+ "w": "112",
+ "h": "44",
+ "x": "1098",
+ "y": "1135",
+ "properties": {
+ "controlName": "104-nodejs-working-with-files:globby"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "112",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "50",
+ "measuredH": "25",
+ "x": "31",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "globby"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5977",
+ "typeID": "__group__",
+ "zOrder": "142",
+ "measuredW": "104",
+ "measuredH": "44",
+ "w": "104",
+ "h": "44",
+ "x": "986",
+ "y": "1185",
+ "properties": {
+ "controlName": "105-nodejs-working-with-files:fs-extra"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "104",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "58",
+ "measuredH": "25",
+ "x": "23",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "fs-extra"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5978",
+ "typeID": "__group__",
+ "zOrder": "141",
+ "measuredW": "112",
+ "measuredH": "44",
+ "w": "112",
+ "h": "44",
+ "x": "1098",
+ "y": "1185",
+ "properties": {
+ "controlName": "106-nodejs-working-with-files:chokidar"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "112",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "66",
+ "measuredH": "25",
+ "x": "23",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "chokidar"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5979",
+ "typeID": "__group__",
+ "zOrder": "145",
+ "measuredW": "153",
+ "measuredH": "44",
+ "w": "153",
+ "h": "44",
+ "x": "1080",
+ "y": "1398",
+ "properties": {
+ "controlName": "107-nodejs-working-with-files:dirname"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "142",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "85",
+ "measuredH": "25",
+ "x": "28",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:purple}__dirname{color}"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "129",
+ "y": "10",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5980",
+ "typeID": "__group__",
+ "zOrder": "146",
+ "measuredW": "153",
+ "measuredH": "44",
+ "w": "153",
+ "h": "44",
+ "x": "1080",
+ "y": "1448",
+ "properties": {
+ "controlName": "108-nodejs-working-with-files:filename"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "142",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "87",
+ "measuredH": "25",
+ "x": "27",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:purple}__filename{color}"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "129",
+ "y": "10",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5981",
+ "typeID": "__group__",
+ "zOrder": "149",
+ "measuredW": "207",
+ "measuredH": "44",
+ "w": "207",
+ "h": "44",
+ "x": "372",
+ "y": "1450",
+ "properties": {
+ "controlName": "100-nodejs-command-line-apps:exitting-and-exit-codes"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "196",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "11",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "161",
+ "measuredH": "25",
+ "x": "28",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Exitting & Exit Codes"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "0",
+ "y": "8",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5982",
+ "typeID": "__group__",
+ "zOrder": "161",
+ "measuredW": "210",
+ "measuredH": "44",
+ "w": "210",
+ "h": "44",
+ "x": "150",
+ "y": "1620",
+ "properties": {
+ "controlName": "101-nodejs-command-line-apps:printing-output"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "199",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "11",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "116",
+ "measuredH": "25",
+ "x": "64",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Printing Output"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "0",
+ "y": "10",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5983",
+ "typeID": "__group__",
+ "zOrder": "162",
+ "measuredW": "199",
+ "measuredH": "44",
+ "w": "199",
+ "h": "44",
+ "x": "161",
+ "y": "1690",
+ "properties": {
+ "controlName": "100-nodejs-command-line-apps:printing-output:process-stdout"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "199",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "113",
+ "measuredH": "25",
+ "x": "43",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:purple}process.stdout{color}"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5984",
+ "typeID": "__group__",
+ "zOrder": "166",
+ "measuredW": "199",
+ "measuredH": "44",
+ "w": "199",
+ "h": "44",
+ "x": "161",
+ "y": "1739",
+ "properties": {
+ "controlName": "101-nodejs-command-line-apps:printing-output:process-stderr"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "199",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "111",
+ "measuredH": "25",
+ "x": "44",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:purple}process.stderr{color}"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5985",
+ "typeID": "__group__",
+ "zOrder": "163",
+ "measuredW": "199",
+ "measuredH": "44",
+ "w": "199",
+ "h": "44",
+ "x": "161",
+ "y": "1789",
+ "properties": {
+ "controlName": "102-nodejs-command-line-apps:printing-output:chalk"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "199",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "111",
+ "measuredH": "25",
+ "x": "44",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:purple}chalk{color} package"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5986",
+ "typeID": "__group__",
+ "zOrder": "164",
+ "measuredW": "199",
+ "measuredH": "44",
+ "w": "199",
+ "h": "44",
+ "x": "161",
+ "y": "1838",
+ "properties": {
+ "controlName": "103-nodejs-command-line-apps:printing-output:figlet"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "199",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "108",
+ "measuredH": "25",
+ "x": "46",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:purple}figlet{color} package"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5987",
+ "typeID": "__group__",
+ "zOrder": "165",
+ "measuredW": "199",
+ "measuredH": "44",
+ "w": "199",
+ "h": "44",
+ "x": "160",
+ "y": "1887",
+ "properties": {
+ "controlName": "104-nodejs-command-line-apps:printing-output:cli-progress"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "199",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "162",
+ "measuredH": "25",
+ "x": "19",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:purple}cli-progress{color} package"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5988",
+ "typeID": "__group__",
+ "zOrder": "156",
+ "measuredW": "209",
+ "measuredH": "44",
+ "w": "209",
+ "h": "44",
+ "x": "380",
+ "y": "1620",
+ "properties": {
+ "controlName": "102-nodejs-command-line-apps:taking-input"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "199",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "94",
+ "measuredH": "25",
+ "x": "53",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Taking Input"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "185",
+ "y": "10",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5989",
+ "typeID": "__group__",
+ "zOrder": "157",
+ "measuredW": "199",
+ "measuredH": "44",
+ "w": "199",
+ "h": "44",
+ "x": "380",
+ "y": "1690",
+ "properties": {
+ "controlName": "100-nodejs-command-line-apps:taking-input:process-stdin"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "199",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "102",
+ "measuredH": "25",
+ "x": "49",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:purple}process.stdin{color}"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5990",
+ "typeID": "__group__",
+ "zOrder": "158",
+ "measuredW": "199",
+ "measuredH": "44",
+ "w": "199",
+ "h": "44",
+ "x": "380",
+ "y": "1739",
+ "properties": {
+ "controlName": "101-nodejs-command-line-apps:taking-input:prompts"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "199",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "135",
+ "measuredH": "25",
+ "x": "32",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:purple}Prompts{color} package"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5991",
+ "typeID": "__group__",
+ "zOrder": "159",
+ "measuredW": "199",
+ "measuredH": "44",
+ "w": "199",
+ "h": "44",
+ "x": "380",
+ "y": "1788",
+ "properties": {
+ "controlName": "102-nodejs-command-line-apps:taking-input:inquirer"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "199",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "131",
+ "measuredH": "25",
+ "x": "34",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:purple}Inquirer{color} package"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5993",
+ "typeID": "__group__",
+ "zOrder": "152",
+ "measuredW": "233",
+ "measuredH": "44",
+ "w": "233",
+ "h": "44",
+ "x": "1000",
+ "y": "1540",
+ "properties": {
+ "controlName": "103-nodejs-command-line-apps:command-line-args"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "222",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "156",
+ "measuredH": "25",
+ "x": "33",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Command Line Args"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "209",
+ "y": "10",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5994",
+ "typeID": "__group__",
+ "zOrder": "153",
+ "measuredW": "231",
+ "measuredH": "44",
+ "w": "231",
+ "h": "44",
+ "x": "1000",
+ "y": "1613",
+ "properties": {
+ "controlName": "100-nodejs-command-line-apps:command-line-args:process-argv"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "221",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "98",
+ "measuredH": "25",
+ "x": "62",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:purple}process.argv{color}"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "207",
+ "y": "10",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5995",
+ "typeID": "__group__",
+ "zOrder": "154",
+ "measuredW": "231",
+ "measuredH": "44",
+ "w": "231",
+ "h": "44",
+ "x": "1000",
+ "y": "1663",
+ "properties": {
+ "controlName": "101-nodejs-command-line-apps:command-line-args:commander-js"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "222",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "181",
+ "measuredH": "25",
+ "x": "13",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:purple}Commander.js{color} Package"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "207",
+ "y": "10",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5996",
+ "typeID": "__group__",
+ "zOrder": "41",
+ "measuredW": "195",
+ "measuredH": "44",
+ "w": "195",
+ "h": "44",
+ "x": "762",
+ "y": "1777",
+ "properties": {
+ "controlName": "100-nodejs-apis:http-module"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "195",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "91",
+ "measuredH": "25",
+ "x": "52",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:blue}http{color} module"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5997",
+ "typeID": "__group__",
+ "zOrder": "40",
+ "measuredW": "195",
+ "measuredH": "44",
+ "w": "195",
+ "h": "44",
+ "x": "762",
+ "y": "1727",
+ "properties": {
+ "controlName": "101-nodejs-apis:express-js"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "195",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "163",
+ "measuredH": "25",
+ "x": "16",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:blue}Express.js{color} framework"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5998",
+ "typeID": "__group__",
+ "zOrder": "39",
+ "measuredW": "195",
+ "measuredH": "44",
+ "w": "195",
+ "h": "44",
+ "x": "762",
+ "y": "1677",
+ "properties": {
+ "controlName": "102-nodejs-apis:nest-js"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "195",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "134",
+ "measuredH": "25",
+ "x": "31",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:blue}Nestjs{color} framework"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "5999",
+ "typeID": "__group__",
+ "zOrder": "38",
+ "measuredW": "195",
+ "measuredH": "44",
+ "w": "195",
+ "h": "44",
+ "x": "762",
+ "y": "1627",
+ "properties": {
+ "controlName": "103-nodejs-apis:fastify"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "195",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "130",
+ "measuredH": "25",
+ "x": "33",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:blue}fastify{color} framework"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6000",
+ "typeID": "__group__",
+ "zOrder": "172",
+ "measuredW": "186",
+ "measuredH": "44",
+ "w": "186",
+ "h": "44",
+ "x": "1022",
+ "y": "1892",
+ "properties": {
+ "controlName": "104-nodejs-apis:got"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "186",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "96",
+ "measuredH": "25",
+ "x": "45",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:blue}got{color} package"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6001",
+ "typeID": "__group__",
+ "zOrder": "171",
+ "measuredW": "186",
+ "measuredH": "44",
+ "w": "186",
+ "h": "44",
+ "x": "1022",
+ "y": "1843",
+ "properties": {
+ "controlName": "105-nodejs-apis:unfetch"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "186",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "129",
+ "measuredH": "25",
+ "x": "28",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:blue}unfetch{color} package"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6002",
+ "typeID": "__group__",
+ "zOrder": "170",
+ "measuredW": "186",
+ "measuredH": "44",
+ "w": "186",
+ "h": "44",
+ "x": "1022",
+ "y": "1794",
+ "properties": {
+ "controlName": "106-nodejs-apis:axios"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "186",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "111",
+ "measuredH": "25",
+ "x": "37",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:blue}axios{color} package"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6003",
+ "typeID": "__group__",
+ "zOrder": "169",
+ "measuredW": "186",
+ "measuredH": "44",
+ "w": "186",
+ "h": "44",
+ "x": "1022",
+ "y": "1745",
+ "properties": {
+ "controlName": "107-nodejs-apis:api-calls-http"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "186",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "91",
+ "measuredH": "25",
+ "x": "47",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:blue}http{color} module"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6004",
+ "typeID": "__group__",
+ "zOrder": "177",
+ "measuredW": "210",
+ "measuredH": "44",
+ "w": "210",
+ "h": "44",
+ "x": "760",
+ "y": "1989",
+ "properties": {
+ "controlName": "108-nodejs-apis:jsonwebtoken"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "210",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "176",
+ "measuredH": "25",
+ "x": "17",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:blue}jsonwebtoken{color} package"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6005",
+ "typeID": "__group__",
+ "zOrder": "176",
+ "measuredW": "210",
+ "measuredH": "44",
+ "w": "210",
+ "h": "44",
+ "x": "760",
+ "y": "2039",
+ "properties": {
+ "controlName": "109-nodejs-apis:passport-js"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "210",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "155",
+ "measuredH": "25",
+ "x": "27",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:blue}Passport.js{color} package"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6006",
+ "typeID": "__group__",
+ "zOrder": "180",
+ "measuredW": "199",
+ "measuredH": "44",
+ "w": "199",
+ "h": "44",
+ "x": "160",
+ "y": "1953",
+ "properties": {
+ "controlName": "100-nodejs-keep-app-running:nodemon"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "199",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "144",
+ "measuredH": "25",
+ "x": "28",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:purple}nodemon{color} package"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6007",
+ "typeID": "__group__",
+ "zOrder": "185",
+ "measuredW": "76",
+ "measuredH": "44",
+ "w": "76",
+ "h": "44",
+ "x": "283",
+ "y": "2006",
+ "properties": {
+ "controlName": "100-nodejs-template-engines:marko"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "76",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "48",
+ "measuredH": "25",
+ "x": "14",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "marko"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6008",
+ "typeID": "__group__",
+ "zOrder": "184",
+ "measuredW": "56",
+ "measuredH": "44",
+ "w": "56",
+ "h": "44",
+ "x": "222",
+ "y": "2006",
+ "properties": {
+ "controlName": "101-nodejs-template-engines:pug"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "56",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "30",
+ "measuredH": "25",
+ "x": "13",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "pug"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6009",
+ "typeID": "__group__",
+ "zOrder": "183",
+ "measuredW": "56",
+ "measuredH": "44",
+ "w": "56",
+ "h": "44",
+ "x": "160",
+ "y": "2006",
+ "properties": {
+ "controlName": "102-nodejs-template-engines:ejs"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "56",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "23",
+ "measuredH": "25",
+ "x": "16",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "ejs"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6010",
+ "typeID": "__group__",
+ "zOrder": "186",
+ "measuredW": "122",
+ "measuredH": "44",
+ "w": "122",
+ "h": "44",
+ "x": "835",
+ "y": "2177",
+ "properties": {
+ "controlName": "100-nodejs-databases:relational"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "122",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "78",
+ "measuredH": "25",
+ "x": "22",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Relational"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6011",
+ "typeID": "__group__",
+ "zOrder": "191",
+ "measuredW": "128",
+ "measuredH": "44",
+ "w": "128",
+ "h": "44",
+ "x": "411",
+ "y": "2176",
+ "properties": {
+ "controlName": "101-nodejs-databases:document"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "128",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "80",
+ "measuredH": "25",
+ "x": "24",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Document"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6012",
+ "typeID": "__group__",
+ "zOrder": "214",
+ "measuredW": "192",
+ "measuredH": "44",
+ "w": "192",
+ "h": "44",
+ "x": "1030",
+ "y": "2067",
+ "properties": {
+ "controlName": "100-nodejs-databases:relational:knex"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "192",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "110",
+ "measuredH": "25",
+ "x": "41",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:blue}Knex{color} package"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6013",
+ "typeID": "__group__",
+ "zOrder": "189",
+ "measuredW": "192",
+ "measuredH": "44",
+ "w": "192",
+ "h": "44",
+ "x": "1029",
+ "y": "2118",
+ "properties": {
+ "controlName": "101-nodejs-databases:relational:type-orm"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "192",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "147",
+ "measuredH": "25",
+ "x": "22",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:blue}TypeORM{color} package"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6014",
+ "typeID": "__group__",
+ "zOrder": "188",
+ "measuredW": "192",
+ "measuredH": "44",
+ "w": "192",
+ "h": "44",
+ "x": "1029",
+ "y": "2166",
+ "properties": {
+ "controlName": "102-nodejs-databases:relational:sequelize"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "192",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "147",
+ "measuredH": "25",
+ "x": "22",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:blue}Sequelize{color} package"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6015",
+ "typeID": "__group__",
+ "zOrder": "187",
+ "measuredW": "192",
+ "measuredH": "44",
+ "w": "192",
+ "h": "44",
+ "x": "1029",
+ "y": "2215",
+ "properties": {
+ "controlName": "103-nodejs-databases:relational:prisma"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "192",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "124",
+ "measuredH": "25",
+ "x": "34",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:blue}Prisma{color} package"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6016",
+ "typeID": "__group__",
+ "zOrder": "190",
+ "measuredW": "192",
+ "measuredH": "44",
+ "w": "192",
+ "h": "44",
+ "x": "1029",
+ "y": "2264",
+ "properties": {
+ "controlName": "104-nodejs-databases:relational:native-drivers"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "192",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "109",
+ "measuredH": "25",
+ "x": "41",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Native Drivers"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6017",
+ "typeID": "__group__",
+ "zOrder": "193",
+ "measuredW": "192",
+ "measuredH": "44",
+ "w": "192",
+ "h": "44",
+ "x": "161",
+ "y": "2127",
+ "properties": {
+ "controlName": "100-nodejs-databases:document:mongoose"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "192",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "153",
+ "measuredH": "25",
+ "x": "19",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:blue}Mongoose{color} package"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6018",
+ "typeID": "__group__",
+ "zOrder": "192",
+ "measuredW": "192",
+ "measuredH": "44",
+ "w": "192",
+ "h": "44",
+ "x": "161",
+ "y": "2176",
+ "properties": {
+ "controlName": "101-nodejs-databases:document:prisma"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "192",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "124",
+ "measuredH": "25",
+ "x": "34",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:blue}Prisma{color} package"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6019",
+ "typeID": "__group__",
+ "zOrder": "194",
+ "measuredW": "192",
+ "measuredH": "44",
+ "w": "192",
+ "h": "44",
+ "x": "161",
+ "y": "2225",
+ "properties": {
+ "controlName": "102-nodejs-databases:document:native-drivers"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "192",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "109",
+ "measuredH": "25",
+ "x": "41",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Native Drivers"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6020",
+ "typeID": "__group__",
+ "zOrder": "196",
+ "measuredW": "128",
+ "measuredH": "44",
+ "w": "128",
+ "h": "44",
+ "x": "161",
+ "y": "2296",
+ "properties": {
+ "controlName": "100-nodejs-testing:jest"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "128",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "33",
+ "measuredH": "25",
+ "x": "47",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Jest"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6021",
+ "typeID": "__group__",
+ "zOrder": "197",
+ "measuredW": "128",
+ "measuredH": "44",
+ "w": "128",
+ "h": "44",
+ "x": "161",
+ "y": "2346",
+ "properties": {
+ "controlName": "101-nodejs-testing:mocha"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "128",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "53",
+ "measuredH": "25",
+ "x": "37",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Mocha"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6022",
+ "typeID": "__group__",
+ "zOrder": "198",
+ "measuredW": "128",
+ "measuredH": "44",
+ "w": "128",
+ "h": "44",
+ "x": "161",
+ "y": "2395",
+ "properties": {
+ "controlName": "102-nodejs-testing:cypress"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "128",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "63",
+ "measuredH": "25",
+ "x": "32",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Cypress"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6023",
+ "typeID": "__group__",
+ "zOrder": "200",
+ "measuredW": "168",
+ "measuredH": "44",
+ "w": "168",
+ "h": "44",
+ "x": "792",
+ "y": "2260",
+ "properties": {
+ "controlName": "100-nodejs-logging:morgan"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "168",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "60",
+ "measuredH": "25",
+ "x": "54",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Morgan"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6024",
+ "typeID": "__group__",
+ "zOrder": "201",
+ "measuredW": "192",
+ "measuredH": "44",
+ "w": "192",
+ "h": "44",
+ "x": "1029",
+ "y": "2342",
+ "properties": {
+ "controlName": "101-nodejs-logging:winston"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "192",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "61",
+ "measuredH": "25",
+ "x": "65",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Winston"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6025",
+ "typeID": "__group__",
+ "zOrder": "203",
+ "measuredW": "192",
+ "measuredH": "44",
+ "w": "192",
+ "h": "44",
+ "x": "1029",
+ "y": "2400",
+ "properties": {
+ "controlName": "100-nodejs-keep-app-running-prod:pm2"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "192",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "105",
+ "measuredH": "25",
+ "x": "43",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:purple}pm2{color} Package"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6026",
+ "typeID": "__group__",
+ "zOrder": "204",
+ "measuredW": "192",
+ "measuredH": "44",
+ "w": "192",
+ "h": "44",
+ "x": "1029",
+ "y": "2449",
+ "properties": {
+ "controlName": "101-nodejs-keep-app-running-prod:forever"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "192",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "126",
+ "measuredH": "25",
+ "x": "33",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:purple}forever{color} Package"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6027",
+ "typeID": "__group__",
+ "zOrder": "205",
+ "measuredW": "192",
+ "measuredH": "44",
+ "w": "192",
+ "h": "44",
+ "x": "1030",
+ "y": "2498",
+ "properties": {
+ "controlName": "102-nodejs-keep-app-running-prod:nohup"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "192",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "48",
+ "measuredH": "25",
+ "x": "72",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "nohup"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6028",
+ "typeID": "__group__",
+ "zOrder": "209",
+ "measuredW": "147",
+ "measuredH": "44",
+ "w": "147",
+ "h": "44",
+ "x": "242",
+ "y": "2483",
+ "properties": {
+ "controlName": "100-nodejs-threads:child-process"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "147",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "106",
+ "measuredH": "25",
+ "x": "22",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Child Process"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6029",
+ "typeID": "__group__",
+ "zOrder": "208",
+ "measuredW": "94",
+ "measuredH": "44",
+ "w": "94",
+ "h": "44",
+ "x": "399",
+ "y": "2483",
+ "properties": {
+ "controlName": "101-nodejs-threads:cluster"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "94",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "56",
+ "measuredH": "25",
+ "x": "19",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Cluster"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6030",
+ "typeID": "__group__",
+ "zOrder": "207",
+ "measuredW": "156",
+ "measuredH": "44",
+ "w": "156",
+ "h": "44",
+ "x": "503",
+ "y": "2483",
+ "properties": {
+ "controlName": "102-nodejs-threads:worker-threads"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "156",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "122",
+ "measuredH": "25",
+ "x": "17",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Worker Threads"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6031",
+ "typeID": "__group__",
+ "zOrder": "212",
+ "measuredW": "216",
+ "measuredH": "44",
+ "w": "216",
+ "h": "44",
+ "x": "1007",
+ "y": "2622",
+ "properties": {
+ "controlName": "100-nodejs-more-debugging:memory-leaks"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "216",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "112",
+ "measuredH": "25",
+ "x": "52",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Memory Leaks"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6032",
+ "typeID": "__group__",
+ "zOrder": "213",
+ "measuredW": "214",
+ "measuredH": "44",
+ "w": "214",
+ "h": "44",
+ "x": "1008",
+ "y": "2560",
+ "properties": {
+ "controlName": "100-nodejs-more-debugging:memory-leaks:garbage-collection"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "214",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "149",
+ "measuredH": "25",
+ "x": "32",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Garbage Collection"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6033",
+ "typeID": "__group__",
+ "zOrder": "215",
+ "measuredW": "214",
+ "measuredH": "44",
+ "w": "214",
+ "h": "44",
+ "x": "1008",
+ "y": "2672",
+ "properties": {
+ "controlName": "101-nodejs-more-debugging:node-inspect"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "214",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "112",
+ "measuredH": "25",
+ "x": "51",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:purple}node --inspect{color}"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6034",
+ "typeID": "__group__",
+ "zOrder": "216",
+ "measuredW": "214",
+ "measuredH": "44",
+ "w": "214",
+ "h": "44",
+ "x": "1008",
+ "y": "2722",
+ "properties": {
+ "controlName": "102-nodejs-more-debugging:using-apm"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "214",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "85",
+ "measuredH": "25",
+ "x": "64",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Using APM"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6035",
+ "typeID": "__group__",
+ "zOrder": "218",
+ "measuredW": "178",
+ "measuredH": "441",
+ "w": "178",
+ "h": "441",
+ "x": "156",
+ "y": "2568",
+ "properties": {
+ "controlName": "100-nodejs-common-modules:builtin-modules"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "178",
+ "h": "441",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0"
+ },
+ {
+ "ID": "1",
+ "typeID": "TextArea",
+ "zOrder": "1",
+ "w": "47",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "11",
+ "y": "12",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "Label",
+ "zOrder": "2",
+ "measuredW": "14",
+ "measuredH": "25",
+ "x": "28",
+ "y": "21",
+ "properties": {
+ "size": "17",
+ "text": "fs"
+ }
+ },
+ {
+ "ID": "3",
+ "typeID": "TextArea",
+ "zOrder": "3",
+ "w": "43",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "62",
+ "y": "12",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "4",
+ "typeID": "Label",
+ "zOrder": "4",
+ "measuredW": "19",
+ "measuredH": "25",
+ "x": "74",
+ "y": "21",
+ "properties": {
+ "size": "17",
+ "text": "os"
+ }
+ },
+ {
+ "ID": "5",
+ "typeID": "TextArea",
+ "zOrder": "5",
+ "w": "86",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "9",
+ "y": "61",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "6",
+ "typeID": "Label",
+ "zOrder": "6",
+ "measuredW": "35",
+ "measuredH": "25",
+ "x": "34",
+ "y": "70",
+ "properties": {
+ "size": "17",
+ "text": "path"
+ }
+ },
+ {
+ "ID": "7",
+ "typeID": "TextArea",
+ "zOrder": "7",
+ "w": "68",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "100",
+ "y": "61",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "8",
+ "typeID": "Label",
+ "zOrder": "8",
+ "measuredW": "20",
+ "measuredH": "25",
+ "x": "124",
+ "y": "70",
+ "properties": {
+ "size": "17",
+ "text": "url"
+ }
+ },
+ {
+ "ID": "9",
+ "typeID": "TextArea",
+ "zOrder": "9",
+ "w": "85",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "9",
+ "y": "110",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "10",
+ "typeID": "Label",
+ "zOrder": "10",
+ "measuredW": "52",
+ "measuredH": "25",
+ "x": "26",
+ "y": "119",
+ "properties": {
+ "size": "17",
+ "text": "events"
+ }
+ },
+ {
+ "ID": "11",
+ "typeID": "TextArea",
+ "zOrder": "11",
+ "w": "69",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "99",
+ "y": "110",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "12",
+ "typeID": "Label",
+ "zOrder": "12",
+ "measuredW": "30",
+ "measuredH": "25",
+ "x": "119",
+ "y": "119",
+ "properties": {
+ "size": "17",
+ "text": "http"
+ }
+ },
+ {
+ "ID": "13",
+ "typeID": "TextArea",
+ "zOrder": "13",
+ "w": "81",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "9",
+ "y": "158",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "14",
+ "typeID": "Label",
+ "zOrder": "14",
+ "measuredW": "61",
+ "measuredH": "25",
+ "x": "19",
+ "y": "167",
+ "properties": {
+ "size": "17",
+ "text": "console"
+ }
+ },
+ {
+ "ID": "15",
+ "typeID": "TextArea",
+ "zOrder": "15",
+ "w": "73",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "95",
+ "y": "158",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "16",
+ "typeID": "Label",
+ "zOrder": "16",
+ "measuredW": "49",
+ "measuredH": "25",
+ "x": "107",
+ "y": "167",
+ "properties": {
+ "size": "17",
+ "text": "assert"
+ }
+ },
+ {
+ "ID": "17",
+ "typeID": "TextArea",
+ "zOrder": "17",
+ "w": "81",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "9",
+ "y": "207",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "18",
+ "typeID": "Label",
+ "zOrder": "18",
+ "measuredW": "62",
+ "measuredH": "25",
+ "x": "19",
+ "y": "216",
+ "properties": {
+ "size": "17",
+ "text": "process"
+ }
+ },
+ {
+ "ID": "19",
+ "typeID": "TextArea",
+ "zOrder": "19",
+ "w": "73",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "95",
+ "y": "208",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "20",
+ "typeID": "Label",
+ "zOrder": "20",
+ "measuredW": "52",
+ "measuredH": "25",
+ "x": "106",
+ "y": "217",
+ "properties": {
+ "size": "17",
+ "text": "cluster"
+ }
+ },
+ {
+ "ID": "21",
+ "typeID": "TextArea",
+ "zOrder": "21",
+ "w": "159",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "9",
+ "y": "257",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "22",
+ "typeID": "Label",
+ "zOrder": "22",
+ "measuredW": "88",
+ "measuredH": "25",
+ "x": "45",
+ "y": "266",
+ "properties": {
+ "size": "17",
+ "text": "perf_hooks"
+ }
+ },
+ {
+ "ID": "23",
+ "typeID": "TextArea",
+ "zOrder": "23",
+ "w": "159",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "9",
+ "y": "305",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "24",
+ "typeID": "Label",
+ "zOrder": "24",
+ "measuredW": "48",
+ "measuredH": "25",
+ "x": "65",
+ "y": "314",
+ "properties": {
+ "size": "17",
+ "text": "crypto"
+ }
+ },
+ {
+ "ID": "25",
+ "typeID": "TextArea",
+ "zOrder": "25",
+ "w": "159",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "9",
+ "y": "353",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "26",
+ "typeID": "Label",
+ "zOrder": "26",
+ "measuredW": "46",
+ "measuredH": "25",
+ "x": "66",
+ "y": "362",
+ "properties": {
+ "size": "17",
+ "text": "Buffer"
+ }
+ },
+ {
+ "ID": "27",
+ "typeID": "TextArea",
+ "zOrder": "27",
+ "w": "57",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "111",
+ "y": "12",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "28",
+ "typeID": "Label",
+ "zOrder": "28",
+ "measuredW": "25",
+ "measuredH": "25",
+ "x": "127",
+ "y": "21",
+ "properties": {
+ "size": "17",
+ "text": "net"
+ }
+ },
+ {
+ "ID": "29",
+ "typeID": "Label",
+ "zOrder": "29",
+ "measuredW": "125",
+ "measuredH": "25",
+ "x": "26",
+ "y": "405",
+ "properties": {
+ "size": "17",
+ "text": "Built-in Modules"
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6037",
+ "typeID": "__group__",
+ "zOrder": "150",
+ "measuredW": "295",
+ "measuredH": "44",
+ "w": "295",
+ "h": "44",
+ "x": "619",
+ "y": "1450",
+ "properties": {
+ "controlName": "104-nodejs-command-line-apps:environment-variables"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "285",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "172",
+ "measuredH": "25",
+ "x": "57",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "Environment Variables"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "271",
+ "y": "10",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6038",
+ "typeID": "__group__",
+ "zOrder": "151",
+ "measuredW": "165",
+ "measuredH": "44",
+ "w": "165",
+ "h": "44",
+ "x": "607",
+ "y": "1400",
+ "properties": {
+ "controlName": "100-nodejs-command-line-apps:environment-variables:dotenv"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "153",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "12",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "123",
+ "measuredH": "25",
+ "x": "31",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:purple}dotenv{color} package"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "0",
+ "y": "9",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
+ },
+ {
+ "ID": "6039",
+ "typeID": "__group__",
+ "zOrder": "155",
+ "measuredW": "134",
+ "measuredH": "44",
+ "w": "134",
+ "h": "44",
+ "x": "780",
+ "y": "1400",
+ "properties": {
+ "controlName": "101-nodejs-command-line-apps:environment-variables:process-env"
+ },
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "TextArea",
+ "zOrder": "0",
+ "w": "124",
+ "h": "44",
+ "measuredW": "200",
+ "measuredH": "140",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16770457"
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Label",
+ "zOrder": "1",
+ "measuredW": "93",
+ "measuredH": "25",
+ "x": "12",
+ "y": "9",
+ "properties": {
+ "size": "17",
+ "text": "{color:purple}process.env{color}"
+ }
+ },
+ {
+ "ID": "2",
+ "typeID": "__group__",
+ "zOrder": "2",
+ "measuredW": "24",
+ "measuredH": "24",
+ "w": "24",
+ "h": "24",
+ "x": "110",
+ "y": "10",
+ "children": {
+ "controls": {
+ "control": [
+ {
+ "ID": "0",
+ "typeID": "Icon",
+ "zOrder": "0",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "color": "16777215",
+ "icon": {
+ "ID": "circle",
+ "size": "small"
+ }
+ }
+ },
+ {
+ "ID": "1",
+ "typeID": "Icon",
+ "zOrder": "1",
+ "measuredW": "24",
+ "measuredH": "24",
+ "x": "0",
+ "y": "0",
+ "properties": {
+ "icon": {
+ "ID": "check-circle",
+ "size": "small"
+ },
+ "color": "3700253"
+ }
+ }
+ ]
+ }
+ }
+ }
+ ]
+ }
+ }
}
]
},
@@ -7037,8 +12206,8 @@
"branchID": "Master",
"resourceID": "4BE92169-157F-4FC5-8E20-403CBCF7A6C6",
"mockupH": "2827",
- "mockupW": "1118",
- "measuredW": "1224",
+ "mockupW": "1100",
+ "measuredW": "1234",
"measuredH": "3027",
"version": "1.0"
},
diff --git a/public/sitemap.xml b/public/sitemap.xml
index 8d6fe1b47..7454e34a0 100644
--- a/public/sitemap.xml
+++ b/public/sitemap.xml
@@ -51,7 +51,7 @@
https://roadmap.sh/nodejs
monthly
- 2022-08-25T16:21:13.387Z
+ 2022-08-25T19:14:40.904Z
1.0
diff --git a/scripts/content-skeleton.ts b/scripts/content-skeleton.ts
index 71e92853c..40b1edc63 100644
--- a/scripts/content-skeleton.ts
+++ b/scripts/content-skeleton.ts
@@ -47,6 +47,7 @@ const roadmaps: Record = {
angular: require('../public/project/angular.json'),
blockchain: require('../public/project/blockchain.json'),
javascript: require('../public/project/javascript.json'),
+ nodejs: require('../public/project/nodejs.json'),
};
if (!roadmapKey || !roadmaps[roadmapKey]) {