Build your first production-grade web app from scratch using Node.js, Express, MongoDB, authentication, and testing with guidance from a member of the Express Technical Committee as well as a Node.js core collaborator and releaser
Key Features:
- Learn JavaScript, async programming, and event-driven architectures in Node.js
- Discover best practices for secure deployment and testing of Node.js apps
- Build a feature-rich web app from scratch using MongoDB, Express.js, and passport.js, including testing
- Purchase of the print or Kindle book includes a free PDF eBook
Book Description:
Node.js revolutionizes server-side JavaScript development and empowers developers to build efficient, scalable, and versatile applications across a range of use cases. This book is written by a Node.js core collaborator and releaser and is the only book for beginners on Node.js. It takes you on a progressive learning path that will give you the skills needed to leverage Node.js.
You'll learn Node.js fundamentals and refresh your knowledge of JavaScript before transitioning to the development of modern web applications using Node.js, Express.js, and MongoDB. You'll get hands-on with complex topics such as asynchronous programming, npm libraries, event-driven patterns for HTTP servers, RESTful API, and JSON Web Tokens. The final chapters will walk you through the deployment process, offering insights into various strategies, including bare metal setups, virtual machines, and containerization with Docker. You'll also be guided through the use of Process Manager 2 (PM2) for efficient process management.
By the end of this Node.js book, you'll have the skills to craft, test, and deploy Node.js web applications confidently and use this powerful stack in your day-to-day projects.
What You Will Learn:
- Build solid and secure Node.js applications from scratch
- Discover how to consume and publish npm packages effectively
- Master patterns for refactoring and evolving your applications over time
- Gain a deep understanding of essential web development principles, including HTTP, RESTful API design, JWT, authentication, authorization, and error handling
- Implement robust testing strategies to enhance the quality and reliability of your applications
- Deploy your Node.js applications to production environments using Docker and PM2
Who this book is for:
This book is for developers eager to learn Node.js swiftly and utilize it for web app development. Front-end developers looking to delve into back-end development or become full-stack developers using Node.js will also benefit from this book's comprehensive coverage of topics. Before you get started with this book, you'll need to be familiar with the basics of coding (JavaScript programming or another language), Git and/or GitHub, and front-end development, as these topics aren't covered in the book.
Table of Contents
- Introduction to Node.js
- Setting Up the Development Environment
- JavaScript Fundamentals
- Asynchronous Programming
- Node.js Core Libraries
- External Modules and NPM
- Event-Driven Architecture
- Testing in Node.js
- Handling HTTP and REST API
- Building Web Applications with Express
- Building a Web Application Project from Scratch
- Data Persistence with MongoDB
- User Authentication and Authorization with Passport.js
- Error Handling in Node.js
- Securing Web Applications
- Deploying Node.js Applications
- Dockerizing a Node.js Application