These are my personal study notes from learning Node.js and using JavaScript outside the browser. I am collecting the core runtime concepts, built-in APIs, and practical patterns that I want to understand and revisit while studying and working.
The chapters move from the Node.js runtime and command line into modules, npm, asynchronous work, events, files, streams, HTTP, process behavior, testing, and production practices. Each chapter explains why a concept matters, shows focused JavaScript examples, and ends with review questions. The final appendices collect the chapter code samples and provide answers to all review questions.
The examples use JavaScript and Node.js built-in modules unless a chapter explicitly introduces a package. They target Node.js 22 or newer; use a currently maintained LTS release and check the official documentation for version-specific behavior.
- Explain what Node.js provides and how JavaScript runs in a Node process
- Use the command line, scripts, and REPL
- Organize code with CommonJS and ECMAScript modules
- Read package metadata and manage npm dependencies
- Understand asynchronous I/O and event-loop behavior
- Work with events, files, paths, URLs, buffers, and streams
- Create HTTP services and handle request data
- Handle errors, process signals, and configuration safely
- Use child processes and worker threads for separate work
- Write tests with Node.js built-in tools
- Apply security, performance, and deployment practices
I use small examples that can be run locally, then change the input and observe what happens. For server and file-system examples, I keep test data disposable and avoid placing secrets in source files. The review questions help me check that I can describe each idea and choose the right API for a real task.
- Portfolio: https://www.ashishranjan.net
- GitHub: https://github.com/a2rp
- CodePen: https://codepen.io/ash1198
- LinkedIn: https://www.linkedin.com/in/aashishranjan
- Facebook: https://www.facebook.com/theash.ashish/
- YouTube: https://www.youtube.com/@ashishranjan-ashz?sub_confirmation=1
- Email: mailto:ash.ranjan09@gmail.com
- Support: https://a2rp-donation-page.netlify.app/
- Buy Me a Coffee: https://buymeacoffee.com/ashishranjan
- Patreon: https://www.patreon.com/ashishranjan