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
- 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