Skip to main content

NodeJS

1. Node.js Basics

  • What is Node.js and its event-driven architecture
  • Installing Node.js and using Node REPL
  • Global objects (__dirname, __filename, process, console)

2. Core Modules

  • File System: Reading, writing, and manipulating files (fs)
  • Path: Working with file and directory paths (path)
  • HTTP: Creating basic HTTP servers and handling requests (http)
  • Events: EventEmitter and custom events (events)
  • Stream: Reading and writing streams (stream)
  • OS: Accessing system information (os)

3. Package Management with npm

  • Installing and managing packages with npm
  • Using package.json and package-lock.json
  • Understanding dependencies (dependencies vs. devDependencies)
  • Semantic Versioning and updating packages
  • Creating and publishing custom npm packages

4. Asynchronous Programming

  • Using util.promisify for callback-based APIs
  • Working with the Promise.all method

5. File Handling

  • Serving static files manually or with libraries (e.g., serve-static)
  • Reading and writing files with streams
  • Working with file streams for large files
  • File streaming and downloads

6. Streams and Buffers

  • Understanding streams (Readable, Writable, Duplex, Transform)
  • Working with Buffers for binary data

7. Performance Optimization

  • Using clustering to utilize multi-core processors
  • Understanding and using the Event Loop effectively
  • Optimizing database queries and caching results
  • Profiling and monitoring Node.js applications

8. API Integration

  • Handling CORS for React-Express communication
  • Proxying requests from React to Node.js in development