nodejs

    Node.js Course

    Master Node.js from the JavaScript runtime and event loop to APIs, security, performance, and enterprise backend architecture.

    203
    Lessons
    31
    Modules
    0/203
    Completed

    Architecture

    Node.js Runtime Architecture

    JavaScript is the language. V8 executes it. Node.js and libuv reach the operating system. Express is a framework on top—not the runtime.

    JavaScript
    language
    execute
    V8
    engine
    APIs
    Node.js
    runtime
    I/O
    libuv
    event loop
    syscalls
    Operating System
    files · net · threads
    Non-blocking I/O
    Wait well on the event loop
    Not secure by default
    Validate, authn, authz, deps
    Express is optional
    Framework ≠ Node.js
    Types ≠ runtime checks
    Validate untrusted input
    Curriculum

    Enterprise learning path

    31 modules · 203 lessons

    Node.js Tutorial

    0/14 complete
    1. 1
      Node.js Home
      Next up

      Start the Node.js course with a complete roadmap from JavaScript runtime fundamentals to enterprise backend architecture, security, performance, and interviews.

    2. 2
      What is Node.js?

      Learn what Node.js is, why it is a runtime rather than a language, and how JavaScript, V8, Node.js APIs, and the operating system relate.

    3. 3
      Why Node.js?

      Understand why teams choose Node.js for I/O-heavy APIs, when it is a poor fit, and how it compares with other backend runtimes.

    4. 4
      Node.js vs Browser JavaScript

      Compare browser JavaScript and Node.js: available APIs, missing DOM and window, modules, and security boundaries.

    5. 5
      Node.js Architecture

      See how JavaScript, V8, Node.js bindings, libuv, the thread pool, and the operating system fit together.

    6. 6
      Node.js Runtime

      Learn what the Node.js runtime provides: process, modules, buffers, streams, and I/O that browsers do not ship.

    7. 7
      V8 Engine

      Understand V8's role: parsing, compiling, optimizing, and garbage-collecting JavaScript inside Node.js.

    8. 8
      Node.js Installation

      Install Node.js correctly, verify versions, and understand LTS versus current release lines for production.

    9. 9
      Node.js Version Management

      Manage multiple Node.js versions with nvm or similar tools and pin engines for teams.

    10. 10
      Your First Node.js Application

      Write, run, and reason about a first Node.js script and a tiny HTTP server without Express.

    11. 11
      Node.js Project Structure

      Organize src, config, tests, and composition roots so Node.js services stay maintainable.

    12. 12
      Running Node.js Applications

      Run scripts with node, npm scripts, watch modes, and environment-specific entry points.

    13. 13
      Node.js REPL and CLI

      Use the Node.js REPL and command-line flags to inspect runtime behavior and debug quickly.

    14. 14
      Environment Variables

      Load configuration from the environment, separate secrets from code, and fail fast on missing required values.

    Node.js Modules

    0/8 complete
    1. 15
      Modules Introduction

      Learn why Node.js programs are split into modules and how encapsulation works at file boundaries.

    2. 16
      CommonJS Modules

      Use require, module.exports, and exports, and understand wrapping and load order.

    3. 17
      ES Modules

      Use import and export in Node.js, including type module, file extensions, and interoperability notes.

    4. 18
      Module Resolution

      Trace how Node.js resolves relative paths, node_modules, and package exports maps.

    5. 19
      Built-in and Third-Party Modules

      Know when to use node: core modules versus npm packages and how to import them safely.

    6. 20
      Custom Modules

      Design custom modules with clear exports, no hidden I/O, and testable seams. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    7. 21
      Module Caching

      Understand that Node.js caches loaded modules and why singletons appear accidentally.

    8. 22
      Dynamic Imports

      Load modules on demand with import() for optional features and startup slimming. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    NPM & Package Management

    0/8 complete
    1. 23
      What is NPM?

      Understand npm as the package manager and registry client that installs and publishes JavaScript packages.

    2. 24
      package.json

      Read and write package.json fields: name, type, engines, scripts, and dependency ranges.

    3. 25
      Dependencies and Semver

      Use dependencies versus devDependencies and interpret semantic version ranges and lockfiles.

    4. 26
      Installing and Updating Packages

      Install, update, and remove packages reproducibly with npm and review the resulting tree.

    5. 27
      NPM Scripts

      Use npm scripts as the team interface for start, test, lint, and migrate. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    6. 28
      Package Security

      Use npm audit thoughtfully, review publish rights, and reduce supply-chain risk. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    7. 29
      Publishing Packages

      Publish a scoped package with a clear public surface, files list, and version policy.

    8. 30
      Workspaces and Monorepos

      Use npm workspaces to share packages without inventing a distributed system. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    Asynchronous Node.js

    0/8 complete
    1. 31
      Synchronous vs Asynchronous Programming

      Contrast blocking calls with asynchronous I/O and why Node.js favors non-blocking APIs on the request path.

    2. 32
      Callbacks

      Read error-first callbacks and know where they still appear in Node.js core history.

    3. 33
      Callback Hell

      Recognize nested callbacks and how promises and async/await flatten control flow.

    4. 34
      Promises

      Create, chain, and settle Promises, including rejection paths. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    5. 35
      async / await

      Use async/await for readable asynchronous Node.js code and understand returned Promises.

    6. 36
      Async Error Handling

      Handle rejections, avoid unhandledRejection, and classify operational failures. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    7. 37
      Promise Concurrency

      Use Promise.all, allSettled, race, and any with clear failure semantics. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    8. 38
      AbortController

      Cancel outbound work with AbortController and timeouts so Node.js does not wait forever.

    Node.js Event Loop

    0/9 complete
    1. 39
      What is the Event Loop?

      Explain the Node.js event loop as the coordinator that resumes JavaScript when I/O and timers are ready.

    2. 40
      Why Node.js is Event-Driven

      Connect event-driven I/O to Node.js scalability for many idle connections. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    3. 41
      Call Stack, Callback Queue, and Microtask Queue

      Separate the call stack, macrotask/callback queues, and microtask queue (Promises, queueMicrotask).

    4. 42
      Timers, Poll, Check, and Close Phases

      Walk the major libuv phases: timers, pending, poll, check, and close callbacks. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    5. 43
      process.nextTick()

      Use process.nextTick carefully: it queues work before the event loop continues and can starve I/O.

    6. 44
      setImmediate() vs setTimeout()

      Compare setImmediate and setTimeout(0) and why order depends on context (inside I/O vs not).

    7. 45
      Blocking vs Non-Blocking Code

      Identify blocking JavaScript and synchronous I/O that stall the event loop. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    8. 46
      CPU-Bound vs I/O-Bound Work

      Classify work and choose async I/O, worker threads, or another service accordingly.

    9. 47
      Event Loop Execution

      Trace a complete turn: JS runs, microtasks drain, phases run, process stays alive while handles exist.

    Node.js Core APIs

    0/8 complete
    1. 48
      process

      Use process for env, arguments, signals, exit codes, and runtime information. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    2. 49
      path, os, and url

      Use path, os, and url for portable filesystem paths, host facts, and URL parsing.

    3. 50
      events and util

      Know EventEmitter as a core primitive and util for debugging and promisify. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    4. 51
      crypto

      Use Node.js crypto for hashing, HMAC, random bytes, and understand sync versus async cost.

    5. 52
      timers and assert

      Schedule timers correctly and use assert for invariants in tests and trusted internals.

    6. 53
      buffer

      Understand Buffer as fixed-length binary in Node.js and why strings are not bytes.

    7. 54
      child_process

      Spawn processes for tools and isolate CPU work, with argument safety and timeouts.

    8. 55
      worker_threads

      Offload CPU-bound JavaScript to worker threads without treating them as a scaling silver bullet.

    File System

    0/6 complete
    1. 56
      fs Fundamentals

      Use node:fs and fs/promises for files and directories with explicit error handling.

    2. 57
      Reading and Writing Files

      Read and write text and binary files safely, including flags and encodings. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    3. 58
      Directories and Metadata

      Create directories, list entries, and read stats without trusting filenames. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    4. 59
      Sync vs Async File Operations

      Know when sync fs is acceptable (startup, CLIs) and why it is dangerous on servers.

    5. 60
      File Streams and Large Files

      Stream large files so memory stays bounded and clients can start reading early. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    6. 61
      File Upload Architecture

      Design uploads with size limits, virus-scanning seams, and object storage rather than naive disk writes.

    Buffers & Streams

    0/6 complete
    1. 62
      Why Buffers Exist

      Explain why Node.js needed Buffer before Uint8Array was ubiquitous and how they interoperate now.

    2. 63
      Readable and Writable Streams

      Consume readable streams and write with backpressure in mind. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    3. 64
      Duplex and Transform Streams

      Use duplex and transform streams for protocols and incremental processing. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    4. 65
      pipe() and Backpressure

      Understand pipe, pipeline, and why backpressure protects memory. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    5. 66
      Stream Pipelines

      Compose pipeline() for production stream graphs with guaranteed cleanup. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    6. 67
      Streaming APIs

      Design HTTP APIs that stream responses for large or incremental data. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    Events

    0/4 complete
    1. 68
      EventEmitter

      Create emitters, listen, and emit events with the Node.js events module. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    2. 69
      Event-Driven Design

      Use events for decoupling inside a process without pretending it is a distributed bus.

    3. 70
      EventEmitter Best Practices

      Name events, handle errors, and avoid unbounded listeners. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    4. 71
      EventEmitter Memory Leak Risks

      Find leaks from forgotten listeners and growing listener arrays. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    HTTP

    0/7 complete
    1. 72
      HTTP Fundamentals

      Review HTTP methods, status codes, headers, and message bodies from a Node.js server viewpoint.

    2. 73
      Node.js HTTP Module

      Use node:http to create servers and understand IncomingMessage and ServerResponse.

    3. 74
      HTTP Server

      Bind ports, handle connections, and shut servers down gracefully. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    4. 75
      Requests, Responses, and Headers

      Read headers safely, set content-type, and avoid header injection. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    5. 76
      Routing and Query Parameters

      Route on method and pathname and parse query strings without a framework. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    6. 77
      Request Body and JSON APIs

      Read bodies with size limits and parse JSON as unknown. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    7. 78
      HTTP Error Handling

      Map errors to status codes and never leak stacks in production. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    REST API Development

    0/7 complete
    1. 79
      REST Principles

      Apply resource-oriented design and stateless requests on Node.js APIs. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    2. 80
      Resource Design

      Name resources, nest carefully, and avoid deep obligatory trees. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    3. 81
      HTTP Methods and Status Codes

      Choose GET, POST, PUT, PATCH, DELETE and 2xx/4xx/5xx correctly. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    4. 82
      Request Validation and Response Design

      Validate bodies and produce consistent response envelopes. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    5. 83
      Pagination, Filtering, and Sorting

      Page large collections and push filters to the data store. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    6. 84
      API Versioning

      Version APIs when breaking changes are required; avoid decorative versions. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    7. 85
      Error Responses and Documentation

      Standardize error bodies and document APIs for consumers. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    Express.js

    0/8 complete
    1. 86
      What is Express?

      Define Express as a Node.js HTTP framework and contrast it with the http module. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    2. 87
      Express Architecture

      See app, router, middleware, and error middleware as layers above Node.js. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    3. 88
      Express Routing

      Declare routes, params, and routers without putting business logic in the router file.

    4. 89
      Express Middleware

      Write middleware for cross-cutting concerns and keep it side-effect explicit. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    5. 90
      Express Error Middleware

      Use four-argument error middleware and map AppError to HTTP. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    6. 91
      Controllers and Services

      Split HTTP adapters from application services for testability. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    7. 92
      Express Validation and Auth Middleware

      Validate params and authorize after authentication, never as the only security control.

    8. 93
      Express File Uploads and API Architecture

      Place uploads and feature routers in a maintainable Express composition. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    Node.js + TypeScript

    0/6 complete
    1. 94
      Why TypeScript with Node.js?

      Use TypeScript for contracts in Node.js services while staying honest about erasure.

    2. 95
      TypeScript Node.js Project Setup

      Configure tsconfig, module settings, and a build that runs on Node.js. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    3. 96
      Type-Safe APIs and DTOs

      Separate wire DTOs from domain models and map at the adapter. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    4. 97
      Service and Repository Layers

      Type services and repositories so Node.js I/O stays replaceable in tests. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    5. 98
      Error Types and Generic Responses

      Model typed errors and generic API envelopes without over-abstracting. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    6. 99
      Runtime Validation

      Validate unknown input with a schema library and only then treat values as domain types.

    Databases

    0/7 complete
    1. 100
      SQL Databases and Node.js

      Connect Node.js to PostgreSQL or MySQL with drivers, not as a full SQL course. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    2. 101
      MongoDB and Node.js

      Use the MongoDB driver from Node.js with explicit schemas at the application layer.

    3. 102
      Drivers and Connection Pools

      Size pools, set timeouts, and avoid exhausting database connections. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    4. 103
      Transactions and Queries

      Use parameterized queries and transactions for multi-row invariants. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    5. 104
      ORM Concepts and Prisma

      Use Prisma or similar as a Node.js data-access tool, not as the domain model. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    6. 105
      Database Migrations

      Evolve schemas with versioned migrations from Node.js CI. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    7. 106
      Repository Pattern and Data Access Layer

      Hide drivers behind repositories so services stay database-agnostic at the use-case level.

    Authentication

    0/6 complete
    1. 107
      Authentication Fundamentals

      Define authentication as proving identity, distinct from authorization. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    2. 108
      Sessions and Cookies

      Store session identifiers in secure cookies and session data server-side or in Redis.

    3. 109
      JWT Access and Refresh Tokens

      Use short-lived access tokens and rotating refresh tokens with revocation strategy.

    4. 110
      Password Hashing

      Hash passwords with bcrypt or Argon2 asynchronously and never log them. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    5. 111
      Authentication Middleware

      Resolve the current user from a session or token and attach a trusted identity object.

    6. 112
      OAuth 2.0 and OpenID Connect

      Use OAuth for delegated authorization and OIDC for identity, without inventing your own protocol.

    Authorization

    0/4 complete
    1. 113
      RBAC and Permissions

      Model roles and permissions in the Node.js service, enforced on every request. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    2. 114
      Resource Authorization

      Authorize actions on a specific course or enrollment, not only global roles. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    3. 115
      Policy-Based Authorization

      Centralize authorization decisions in policy functions or a small engine. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    4. 116
      Multi-Tenant Authorization

      Isolate tenants in queries and policies so IDs from one school never read another.

    Security

    0/8 complete
    1. 117
      OWASP and Node.js

      Map OWASP risks onto Node.js APIs and dependency practice. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    2. 118
      Input Validation and Injection

      Prevent SQL, NoSQL, command, and header injection with parameterization and allowlists.

    3. 119
      XSS, CSRF, and CORS

      Understand browser-related risks for Node.js APIs that serve cookies or HTML. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    4. 120
      Prototype Pollution and Path Traversal

      Stop hostile keys and ../ paths from escaping your intended objects and directories.

    5. 121
      Secrets Management and Security Headers

      Load secrets from the environment and set security headers on HTTP responses. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    6. 122
      Rate Limiting and Brute Force Protection

      Rate-limit authentication and expensive endpoints, preferably with a shared store.

    7. 123
      API and Authentication Security

      Harden tokens, sessions, and error messages against account enumeration where required.

    8. 124
      Supply Chain Security

      Pin dependencies, review install scripts, and monitor advisories for Node.js services.

    Error Handling

    0/5 complete
    1. 125
      Error Fundamentals

      Use Error objects, codes, and cause chains in Node.js. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    2. 126
      Operational vs Programmer Errors

      Keep the process alive for operational failures; crash or alarm on programmer defects.

    3. 127
      Custom Errors and Error Codes

      Define stable error codes for clients and operators. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    4. 128
      Global and Express Error Handling

      Handle unhandled rejections and Express errors without leaking internals. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    5. 129
      Production Error Handling

      Return safe client errors and rich operator context with correlation IDs. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    Logging & Observability

    0/6 complete
    1. 130
      Structured Logging

      Log JSON with levels and avoid string concatenation as your only telemetry. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    2. 131
      Correlation IDs and Request IDs

      Propagate IDs across logs, outbound HTTP, and queues. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    3. 132
      Metrics and Tracing

      Use RED/USE metrics and traces for Node.js latency and event-loop delay. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    4. 133
      Health, Readiness, and Liveness

      Expose probes that match Kubernetes semantics: live versus ready. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    5. 134
      OpenTelemetry Concepts

      Instrument Node.js with traces, metrics, and context propagation conceptually. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    6. 135
      Monitoring Production Node.js

      Watch event-loop delay, memory, GC, and saturation, not only HTTP 200 rates. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    Testing

    0/6 complete
    1. 136
      Testing Fundamentals

      Choose unit, integration, and end-to-end tests for Node.js services. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    2. 137
      Unit and Integration Testing

      Unit-test pure logic and integration-test repositories against a real or test database.

    3. 138
      API Testing

      Test HTTP contracts: status, headers, and error shapes. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    4. 139
      Jest, Vitest, and the Node.js Test Runner

      Pick a runner and keep tests fast and isolated. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    5. 140
      Mocking, Spies, and Fixtures

      Mock time and I/O at seams; use fixtures for documents and users. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    6. 141
      Contract and End-to-End Testing

      Use contract tests between services and sparse e2e journeys. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    Performance

    0/7 complete
    1. 142
      Node.js Performance Fundamentals

      Define latency, throughput, and event-loop delay as first-class Node.js metrics. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    2. 143
      Event Loop Performance

      Detect loop delay from sync work, huge JSON, and accidental crypto sync. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    3. 144
      Memory Usage and Leaks

      Find leaks from caches without TTL, global arrays, and forgotten listeners. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    4. 145
      Profiling and V8 Optimization Concepts

      Profile CPU and understand that V8 optimizations do not fix I/O waits. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    5. 146
      Clustering and Worker Threads

      Use cluster or a process manager to use multiple cores, and workers for CPU, only after measurement.

    6. 147
      Caching, Compression, and Connection Pooling

      Apply HTTP and application caching, gzip/brotli, and healthy pools. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    7. 148
      Horizontal Scaling and Load Balancing

      Run stateless Node.js replicas behind a load balancer. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    Caching

    0/4 complete
    1. 149
      Why Caching?

      Cache to save time and downstream load, with an explicit invalidation story. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    2. 150
      In-Memory Cache and Redis

      Use process memory for tiny hot data and Redis for shared cache. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    3. 151
      Cache-Aside, TTL, and Invalidation

      Implement cache-aside and document who deletes keys on write. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    4. 152
      Distributed Cache, Sessions, and Rate Limiting

      Use Redis for sessions and rate-limit counters across Node.js replicas. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    Background Jobs & Queues

    0/6 complete
    1. 153
      Why Background Jobs?

      Move email, PDFs, and retries off the request path. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    2. 154
      Redis-Based Queues and BullMQ

      Use a queue library on Redis without confusing it with Node.js core. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    3. 155
      Message Brokers: RabbitMQ and Kafka Concepts

      Distinguish queues versus logs and why they are not Node.js. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    4. 156
      Retry and Dead Letter Queues

      Retry with backoff and isolate poison messages. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    5. 157
      Idempotency

      Make handlers safe to run at least once. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    6. 158
      Exactly-Once vs At-Least-Once Concepts

      Explain why exactly-once is a system property, not a Node.js switch. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    WebSockets & Real-Time Applications

    0/5 complete
    1. 159
      WebSocket Fundamentals

      Understand the WebSocket upgrade and full-duplex frames on a Node.js process. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    2. 160
      Socket.IO

      Use Socket.IO as a library on Node.js with rooms and fallbacks, not as the runtime.

    3. 161
      Rooms, Broadcasting, and Connection Management

      Manage membership, heartbeats, and authentication on sockets. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    4. 162
      Scaling WebSockets

      Scale connections with sticky sessions or a pub/sub adapter. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    5. 163
      Real-Time Notifications and Chat Architecture

      Combine HTTP for commands with sockets for push, plus a durable event log when required.

    File Uploads

    0/4 complete
    1. 164
      Multipart Requests and Streaming Uploads

      Parse multipart with size limits and stream to storage. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    2. 165
      File Size Limits and MIME Validation

      Validate size and type with allowlists; do not trust Content-Type alone. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    3. 166
      Secure File Storage and S3 Concepts

      Store objects with generated keys and signed URLs, not public original names. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    4. 167
      Secure File Architecture and Virus Scanning Concepts

      Quarantine uploads, scan asynchronously, then publish. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    Microservices

    0/6 complete
    1. 168
      Monolith, Modular Monolith, and Microservices

      Choose modular monoliths before networks, and microservices only for independent change and scale.

    2. 169
      Service Boundaries and API Gateway

      Draw bounded contexts and put cross-cutting auth and routing at a gateway. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    3. 170
      REST, gRPC, and Events

      Choose sync APIs versus async events for coupling and latency. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    4. 171
      Distributed Transactions and the Saga Pattern

      Coordinate multi-service changes with sagas instead of distributed ACID by default.

    5. 172
      Retry and Circuit Breaker

      Retry idempotent calls and open circuits when a dependency is down. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    6. 173
      Microservice Observability

      Propagate context and SLOs across Node.js services. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    Enterprise Node.js Architecture

    0/6 complete
    1. 174
      Layered and Modular Architecture

      Organize Node.js code into layers or modules with one-way dependencies. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    2. 175
      Clean Architecture and Hexagonal Architecture

      Invert dependencies so Node.js HTTP and DB adapters implement ports. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    3. 176
      Domain-Driven Design and Dependency Injection

      Use bounded contexts and inject collaborators at the Node.js composition root. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    4. 177
      Feature-Based and Multi-Tenant Architecture

      Slice by feature and isolate tenant data in every query. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    5. 178
      Monorepos, Nx, and Shared Libraries

      Share types and lint rules without creating a distributed monolith of libraries. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    6. 179
      Configuration Management

      Load typed config at boot and keep secrets out of repositories. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    Scalability

    0/5 complete
    1. 180
      Vertical and Horizontal Scaling

      Scale a Node.js box up or out, knowing the event loop still exists on each process.

    2. 181
      Stateless Applications, Load Balancers, and Reverse Proxies

      Put TLS and routing at the proxy; keep Node.js processes interchangeable. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    3. 182
      Database Scaling and Read Replicas

      Scale data with indexes, replicas, and honest consistency, not only more Node processes.

    4. 183
      Queues, Workers, and Event-Driven Scale

      Absorb spikes with queues and worker processes separate from the API. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    5. 184
      Containers and Kubernetes Concepts

      Package Node.js with a non-root image and probes; Kubernetes is an orchestrator, not Node.js.

    Deployment

    0/6 complete
    1. 185
      Production Build and Environment Configuration

      Build artifacts once and configure with environment at run. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    2. 186
      Docker and Docker Compose

      Run Node.js and dependencies locally and in CI with Compose. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    3. 187
      CI/CD

      Test, scan, and deploy Node.js from a pipeline. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    4. 188
      Process Management and Graceful Shutdown

      Use a process manager and drain HTTP on SIGTERM. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    5. 189
      Zero-Downtime Deployment

      Roll instances behind a load balancer with readiness gates. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    6. 190
      Cloud Deployment Concepts

      Deploy Node.js to a cloud with logs, secrets, and network policy as first-class. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    Node.js Projects

    0/10 complete
    1. 191
      Project: TechLearningPro Backend API

      Build the core learning API: courses, lessons, and progress on Node.js. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    2. 192
      Project: E-Commerce API

      Design catalog, cart, and order APIs with idempotent checkout. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    3. 193
      Project: Authentication Service

      Issue sessions or tokens with rotation and audit logs. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    4. 194
      Project: Learning Management API

      Model cohorts, assignments, and grading workflows. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    5. 195
      Project: Real-Time Chat Backend

      Persist messages and fan out over sockets. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    6. 196
      Project: Payment Processing Backend

      Handle webhooks, idempotency, and ledgers without double charges. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    7. 197
      Project: Notification Service

      Fan out email and push from events with templates and preferences. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    8. 198
      Project: Event-Driven Microservice System

      Publish domain events and consume them from isolated Node.js services. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    9. 199
      Project: Enterprise SaaS Backend

      Add tenancy, roles, and audit to a Node.js SaaS. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    10. 200
      Project: Production-Ready Node.js API

      Assemble config, probes, logs, auth, validation, and shutdown into one service. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.

    Practice & Evaluation

    0/3 complete
    1. 201
      Node.js Interview Questions

      Practice Node.js interview questions from runtime fundamentals through architecture trade-offs.

    2. 202
      Node.js Quiz

      Check runtime, async, HTTP, security, and architecture knowledge with scenario questions.

    3. 203
      Node.js Exercises

      Practice targeted exercises that compose HTTP, async I/O, validation, and tests. This Node.js lesson connects the idea to runtime behavior, production APIs, and TechLearningPro.