We guarantee you that this is the most comprehensive and up-to-date Node JS tutorial + projects course that you can find. You will learn Node from scratch, build your own professional Node.js apps and get hired as a Node.js Backend Developer in 2023!
What you'll learn
- Build enterprise-level Node applications and deploy to the cloud (AWS)
- Lead Node JS projects by making good architecture decisions and helping others on your team
- Work with real-life data and the SpaceX API to build a NASA launch system to discover new planets that may contain life + other projects
- Build a MERN (MongoDb, Express, React, Node) fullstack app and deploy to production
- Become a top 10% Node Developer by learning advanced topics most courses don't cover
- Master the latest ecosystem of a Backend Node JS Developer from scratch
- Learn to build secure and performant, large-scale applications like a Senior Backend Developer
- Use Node JS to build production grade apps including REST APIs and GraphQL APIs
- Authentication, File I/O, Databases (SQL, MongoDB), Express Framework, Sockets, plus many other important topics a Backend Developer should know
- Load balancing, Monitoring, CI/CD, and Zero Downtime Deployment
- Learn security best practices throughout the course so you can be confident with your deployments
This Node course is focused on efficiency. So you never have to waste your time on confusing, out-of-date, incomplete tutorials anymore.
Instead, we'll push you beyond the basics so that you can build professional, modern apps using the latest version of Node and become a Backend or Fullstack Developer.
And you'll be learning Node in good company.
By enrolling today, you’ll also get to join our exclusive live online community classroom to learn alongside thousands of students, alumni, mentors, TAs and Instructors.
Active. Thriving. Supportive. Helpful. Friendly. Motivating. Essential.
These are just a few of the words students use to describe the ZTM Discord which is also one of the biggest and most active developer communities on Discord.
Most importantly, you will be learning from industry experts (Adam and Andrei) that have actual real-world experience working with Node.js and building large-scale apps for companies in Toronto And Silicon Valley.
This project based Node course will introduce you to all of the modern toolchain of a Node JS developer in 2023.
Along the way, you will build a massive NASA Space Launch application using Node.js, Express Framework, RESTful APIs (including the SpaceX API), GraphQL, and much more.
This is a large, full-stack MERN project unlike what you will find in most Node.js tutorials online!
All code is provided step-by-step so even if you don’t like to code along, you will get access to the the full master project code so you can add your own app to your portfolio right away.
Here is what the course will cover to take you from Zero to Node Mastery
The curriculum is very hands on as we guide you from start to finish of releasing a professional (performant and secure) Node project all the way into production.
We start from the very beginning by teaching you Node basics and fundamentals.
But we don't stop there, we'll then dive into advanced topics so you can make good decisions on architecture and tools on any of your future Node.js projects.
Here's a quick look at all the topics you'll learn:
- Focus on Node internals
- Libuv, threads, processes, event loop
- Asynchronous programming
- Node vs PHP vs Python
- Observer Design Pattern
- Event Emitters
2. Module System
- The require Function
- Creating Your Own Modules
- CommonJS vs ECMAScript (ES6) modules
- Module Caching
- Using index.js
3. Package Management
- NPM: The Node Package Manager
- Creating Your Own Packages
- Package And the NPM Registry
- Third Party Modules
- The node_modules Folder
- Semantic Versioning
- Package-lock.json And Versioning
- Vulnerabilities in Dependencies
4. File I/O: Planets Project
- Exploring Exoplanets With Node
- Exploring Kepler Space Telescope Data
- Working With Streams
- Streaming Large Data Files
- Parsing Our Planets Data
- Working With CSV Files
- Finding Habitable Planets
5. Web Servers
- What is a Web Server?
- HTTP Responses and Requests
- HTTP APIs and Routing, Parameterized URLs
- Same Origin Policy, CORS
- Requests and Responses as Streams
- Express vs Next.js vs Koa
- Route Parameters
- Model View Controller (MVC) pattern
- Postman and Insomnia
- Development Dependencies
- Logging Middleware Example / Writing Our Own Middleware
- POST Requests in Express
- MVC In Express
- Express Routers
- RESTful APIs
- Sending Files
- Serving Websites With Node
- Templating Engines
7. NodeJS NASA Project
- Architecture diagrams on LucidChart
- GET, POST, DELETE routes
- Serving React.js Applications in Express
- CORS middleware
- Models vs Controllers vs Routers
- Loading Data On Startup
- Automating Full Stack Applications With NPM
- Serving React Front End (in Production)
- Logging Requests with Morgan
- Serving Applications With Client Side Routing
- Building A Data Access Layer
- Integrating with Frontend, Top Down Approach, Bottom Up Approach
- Updating Our Architecture
8. Testing APIs
- Unit tests vs API tests vs UI tests
- Testing Node APIs with Jest and Supertest
9. Improving Node Performance
- Example app which blocks event loop + real-life blocking functions
- Node Cluster Module theory + in action
- Clustering in the real world
- Load balancing
- PM2 theory + in action
- Managing Live Clusters with PM2
- Zero Downtime Restarts
- Improving Performance of NASA Project
- Stateless APIs
- Node Worker Threads
- Using MongoDB to add persistence to NASA Project
- Big focus on NoSQL vs SQL, PostgreSQL vs MongoDB, when to use both including Trends, Object-Relational Mismatch, ACID, References, Schemas, Schema-less vs Schemas
- MongoDB Atlas
- Horizontally Scaling Databases
- Mongoose Models vs MVC Models
- ObjectIDs in MongoDB
- Choosing A Database For Our NASA API
11. Working With REST APIs
- Demonstrate integrating with a REST API by working with SpaceX API
- Versioning REST APIs
- Running Search Queries
- SpaceX Launch Data
- Mapping API Data to Our Database
- Using Paginated APIs
- Adding Pagination To Our API
- Focus on Security first principles with JWT, cookies, CSRF
- Servers with HTTPS and SSL / TLS
- Working With Auth0
13. Deployment and CI/CD
- Focus on building out a simple CI pipeline for NASA Project on GitHub
- What is CI vs CD?
- Automated tests
- Dynamic configuration with secrets
14. Node Production and the Cloud (AWS)
- Deploy to production with Docker to Amazon EC2
- Virtual Machines
- Serverless vs Containers
- Docker files
- Managing Docker Containers and Images
- Working With SSH
- Production Deployment with PM2 and Mongo Atlas
- GraphQL vs REST
- Building a GraphQL API
16. Sockets (WebSockets, Socket io)
- Sockets overview
- Sockets vs polling
- WebSockets (vs Socket io)
- Socket io Client and Server APIs
- Broadcasting Events
- Build out Full Stack Multiplayer Pong with Sockets
- Implementing Pong Game Logic
- Using Socket io With Express.js
- Namespaces and Rooms
This course will be constantly evolving and updating as the landscape changes.
Just as the Node ecosystem evolves, this course will also constantly evolve and be updated with new lectures and resources for you.
So you can come back to this course anytime you want to review the latest Node best practices.
What's the bottom line?
This course is not about making you just code along without understanding the principles so that when you are done with the course you don’t know what to do other than watch another tutorial... No!
This course will push you and challenge you to go from an absolute beginner in Node.js to someone that is in the top 10% of Node.js Backend Developers 💪.
How do we know?
Because thousands of Zero To Mastery graduates have gotten hired and are now working at companies like Google, Tesla, Amazon, Apple, IBM, JP Morgan, Facebook, Shopify + other top tech companies.
They come from all different backgrounds, ages, and experiences. Many even started as complete beginners.
So there's no reason it can't be you too.
And you have nothing to lose. Because you can start learning right now and if this course isn't everything you expected, we'll refund you 100% within 30 days. No hassles and no questions asked.
When's the best time to get started? Today!
There's never a bad time to learn in-demand skills. But the sooner, the better. So start learning Node today by joining the ZTM Academy. You'll have a clear roadmap to developing the skills to build your own projects, get hired, and advance your career.Start learning now