We may earn an affiliate commission when you visit our partners.
Course image
Udemy logo

Node.js, Express, MongoDB & More

The Complete Bootcamp 2024

Jonas Schmedtmann

Do you want to build fast and powerful back-end applications with JavaScript? Would you like to become a more complete and in-demand developer?

Read more

Do you want to build fast and powerful back-end applications with JavaScript? Would you like to become a more complete and in-demand developer?

Then Node.js is the hot technology for you to learn right now, and you came to the right place to do it.

Welcome to the Complete Node.js, Express, and MongoDB Bootcamp, your fast track to modern back-end development.

This course is the perfect all-in-one package that will take you from a complete beginner to an advanced, highly-skilled Node.js developer.

Like all my other courses, this one is completely project-based. And not just any project: it's a complete, beautiful, and feature-rich application, containing both a RESTful API and a server-side rendered website. It's the most fantastic and complete project that you will find in any Node.js course on the internet.

By building this huge project, you will learn all the skills that you need in order to plan, build, and deploy your own modern back-end applications with Node.js and related technologies.

(If you feel like exploring the project, you can do so at www[.]natours[.]dev. And this is only a small part of the project. Log in with "[email protected]" and password "test1234")

After finishing this course, you will:

1) Be building your own fast, scalable, and powerful Node.js RESTful APIs or web applications;

2) Truly understand how Node.js works behind the scenes;

3) Be able to work with NoSQL data and model data in real-world situations (a hugely important skill);

4) Know how modern back-end development works, and how all the different technologies fit together (hard to understand from scattered tutorials and videos);

5) Have experience in professionally used tools and libraries like Express, Mongoose, Stripe, Sendgrid, Atlas, Compass, Git, Heroku, and many more;

6) Have built a complete application, which is a perfect starting point for your own applications in the future.

Please note that this course is NOT for absolute web development beginners, so you should already be familiar with basic JavaScript. NO back-end experience required though.

It's an absolutely full-packed, deep-dive course with over 40 hours of content.

Since this is the "Complete Node.js Bootcamp", the course is crammed with tons of different technologies, techniques, and tools, so that you walk away from the course as a complete Node.js developer.

That's why the course turned out to be over 40 hours long. But if that sounds like too much for you, don't worry, there are videos or entire sections that you can safely skip.

Here is exactly what you're gonna learn:

  • Fundamentals of Node.js, core modules, and NPM (Node Package Manager)

  • How Node.js works behind the scenes: event loop, blocking vs non-blocking code, event-driven architecture, streams, modules, etc.

  • Fundamentals of Express (Node.js framework): routing, middleware, sending responses, etc.

  • RESTful API design and development with advanced features: filtering, sorting, aliasing, pagination

  • Server-side website rendering (HTML) with Pug templates

  • CRUD operations with MongoDB database locally and on the Atlas platform (in the cloud)

  • Advanced MongoDB: geospatial queries, aggregation pipeline, and operators

  • Fundamentals of Mongoose (MongoDB JS driver): Data models, CRUD operations, data validation, and middleware

  • Advanced Mongoose features: modeling geospatial data, populates, virtual populates, indexes, etc.

  • Using the MVC (Model-View-Controller) architecture

  • How to work with data in NoSQL databases

  • Advanced data modelling: relationships between data, embedding, referencing, and more

  • Complete modern authentication with JWT: user sign up, log in, password reset, secure cookies, etc.

  • Authorization (user roles)

  • Security: best practices, encryption, sanitization, rate limiting, etc.

  • Accepting credit card payments with Stripe: Complete integration on the back-end and front-end

  • Uploading files and image processing

  • Sending emails with Mailtrap and Sendgrid

  • Advanced error handling workflows

  • Deploying Node.js application to production with Heroku

  • Git and GitHub crash course

  • And so much more.

Why should you learn Node.js and take this course?

If you want to learn Node.js and modern back-end development, then there is no doubt that this course is for you.

It's the biggest Node.js course on the internet, it has by far the most complete course project, and offers the most in-depth explanations of all topics included.

And even if you already know some Node.js, you should still take this course, because it contains subjects that are not covered anywhere else, or not in the same depth.

But maybe you're not yet convinced that Node.js really is the right technology for you to learn right now?

Well, first, Node.js will allow you to use your JavaScript skills to build applications on the back-end. That itself is a huge gain, which makes your full-stack development process so much easier and faster.

Plus, popularity and opportunities for Node.js are off the charts. It's a modern, proven, and reliable technology, used by tech giants (and 6-figure-salary-paying companies) like Netflix, PayPal, Uber, and many more.

Node.js really is what you should invest your time in, instead of outdated technology like PHP.

In summary, if you already know JavaScript, learning Node is the logical next step for you. It will make you a better, more versatile, and more complete developer, which will ultimately boost your opportunities in the job market.

And I created this course to help you do exactly that. It really is the course I wish I had when I was first learning back-end development with Node.js and all related technologies.

And this is what you get by signing up today:

  • Lifetime access to 40+ hours of HD quality videos. No monthly subscription. Learn at your own pace, whenever you want;

  • Friendly and fast support in the course Q&A whenever you have questions or get stuck;

  • English closed captions (not the auto-generated ones provided by Udemy);

  • Course slides in PDF format;

  • Downloadable assets, starter code, and final code for each section;

  • Lots of small challenges are included in the videos so you can track your progress.

And now, I hope to welcome you as a new student in my course. So click that "Enroll" button right now, and join me in this adventure today.

But if you're not 100% sure yet, just go ahead and watch the promo video to take a look at the course project. I promise you will be amazed :)

See you in the course.

Enroll now

What's inside

Learning objectives

  • Master the entire modern back-end stack: node, express, mongodb and mongoose (mongodb js driver)
  • Build a complete, beautiful & real-world application from start to finish (api and server-side rendered website)
  • Build a fast, scalable, feature-rich restful api (includes filters, sorts, pagination, and much more)
  • Learn how node really works behind the scenes: event loop, blocking vs non-blocking code, streams, modules, etc.
  • Crud operations with mongodb and mongoose
  • Deep dive into mongoose (including all advanced features)
  • How to work with data in nosql databases (including geospatial data)
  • Advanced authentication and authorization (including password reset)
  • Security: encryption, sanitization, rate limiting, etc.
  • Server-side website rendering with pug templates
  • Credit card payments with stripe
  • Sending emails & uploading files
  • Deploy the final application to production (including a git crash-course)
  • Downloadable videos, code and design assets for projects
  • Show more
  • Show less

Syllabus

Welcome, Welcome, Welcome!
Course Structure and Projects
READ BEFORE YOU START!
Let's Install Node.js
Read more
Introduction to Node.js and NPM
Section Intro
What Is Node.js and Why Use It?
Running Javascript Outside the Browser
Using Modules 1: Core Modules
Reading and Writing Files
Blocking and Non-Blocking: Asynchronous Nature of Node.js
Reading and Writing Files Asynchronously
Creating a Simple Web Server
Routing
Building a (Very) Simple API
HTML Templating: Building the Templates
HTML Templating: Filling the Templates
Parsing Variables from URLs
Using Modules 2: Our Own Modules
Introduction to NPM and the package.json File
Types of Packages and Installs
Using Modules 3: 3rd Party Modules
Package Versioning and Updating
Setting up Prettier in VS Code
Recap and What's Next
Introduction to Back-End Web Development
An Overview of How the Web Works
HTTP in Action
Front-End vs. Back-End Web Development
Static vs Dynamic vs API
How Node.js Works: A Look Behind the Scenes
Node, V8, Libuv and C++
Processes, Threads and the Thread Pool
The Node.js Event Loop
The Event Loop in Practice
Events and Event-Driven Architecture
Events in Practice
Introduction to Streams
Streams in Practice
How Requiring Modules Really Works
Requiring Modules in Practice
[Optional] Asynchronous JavaScript: Promises and Async/Await
The Problem with Callbacks: Callback Hell
From Callback Hell to Promises
Building Promises
Consuming Promises with Async/Await
Returning Values from Async Functions
Waiting for Multiple Promises Simultaneously
Express: Let's Start Building the Natours API!
What is Express?
Installing Postman
Setting up Express and Basic Routing
APIs and RESTful API Design
Starting Our API: Handling GET Requests
Handling POST Requests
Responding to URL Parameters
Handling PATCH Requests
Handling DELETE Requests
Refactoring Our Routes
Middleware and the Request-Response Cycle
Creating Our Own Middleware
Using 3rd-Party Middleware
Implementing the "Users" Routes
Creating and Mounting Multiple Routers
A Better File Structure
Param Middleware
Chaining Multiple Middleware Functions
Serving Static Files
Environment Variables
Setting up ESLint + Prettier in VS Code
Introduction to MongoDB
What is MongoDB?
No Need to Install MongoDB Locally
[OPTIONAL] Installing MongoDB on macOS
[OPTIONAL] Installing MongoDB on Windows
[OPTIONAL] Creating a Local Database
[OPTIONAL] CRUD: Creating Documents
[OPTIONAL] CRUD: Querying (Reading) Documents
[OPTIONAL] CRUD: Updating Documents
[OPTIONAL] CRUD: Deleting Documents
Using Compass App for CRUD Operations
Creating a Hosted Database with Atlas
Connecting to Our Hosted Database
Using MongoDB with Mongoose
Connecting Our Database with the Express App
What Is Mongoose?
Creating a Simple Tour Model
Creating Documents and Testing the Model
Intro to Back-End Architecture: MVC, Types of Logic, and More
Refactoring for MVC
Another Way of Creating Documents
Reading Documents
Updating Documents
Deleting Documents

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Provides hands-on labs and interactive materials, which aid students in developing practical skills
Ideal for intermediate students seeking to strengthen their existing foundations in back-end development
Suitable for those with prior JavaScript knowledge who aim to expand their skills to back-end development
Covers a comprehensive range of in-demand technologies used in modern back-end development, including Node.js, Express, MongoDB, and Mongoose
Project-based approach offers practical experience in building a complete and feature-rich application from start to finish
Taught by Jonas Schmedtmann, an experienced instructor with a strong reputation in the field

Save this course

Save Node.js, Express, MongoDB & More: The Complete Bootcamp 2024 to your list so you can find it easily later:
Save

Reviews summary

Excellent web development course

According to students, this is a well-built course with thorough teaching that helps you make visual projects. It is the second course a student took from this instructor and they highly recommend this course. There is also another course from the instructor that focuses on front-end development that pairs well with this one.
Positive: Visually appealing
"It helps that he also enjoys a good eye for the visual parts of this project, so the end result really is very beautiful to use and look at."
Positive: Instructor is engaged
"You get the sense that Jonas cares a great deal bout every aspect of each lesson."
Positive: Matches another course well
"That is very good planing to link the two courses."
Positive: In-depth content
"This is a very well built course."
"There is a great amount of detail combined with a very thorough teaching approach."

Activities

Coming soon We're preparing activities for Node.js, Express, MongoDB & More: The Complete Bootcamp 2024. These are activities you can do either before, during, or after a course.

Career center

Learners who complete Node.js, Express, MongoDB & More: The Complete Bootcamp 2024 will develop knowledge and skills that may be useful to these careers:
Backend Developer
As a Backend Developer, you will write and maintain server-side code. This course helps you get there by introducing you to the Node.js backend framework, as well as many other web technologies. This course will help you build a solid foundation for a career as a Backend Developer. It covers a wide range of topics, from basic Node.js to advanced MongoDB and Mongoose. By the end of the course, you will be able to build complex, scalable, and efficient backend applications.
Full-Stack Developer
Full Stack Developers are responsible for both the front-end and back-end of web applications. This course is a great way to get started in full stack development, as it covers both Node.js and Express for the back-end, as well as HTML and CSS for the front-end. By the end of the course, you will be able to build complete web applications from scratch.
Web Developer
Web Developers are responsible for the design and development of websites. This course can help you get started in web development, as it covers a wide range of topics, from basic HTML and CSS to advanced Node.js and MongoDB. By the end of the course, you will be able to build complete websites from scratch.
Software Engineer
Software Engineers are responsible for the design, development, and maintenance of software systems. This course can help you get started in software engineering, as it covers a wide range of topics, from basic programming concepts to advanced Node.js and MongoDB. By the end of the course, you will be able to build complex software systems from scratch.
Data Engineer
Data Engineers are responsible for the design, development, and maintenance of data systems. This course can help you get started in data engineering, as it covers a wide range of topics, from basic data modeling to advanced MongoDB and Mongoose. By the end of the course, you will be able to build complex data systems from scratch.
Database Administrator
Database Administrators are responsible for the design, development, and maintenance of database systems. This course can help you get started in database administration, as it covers a wide range of topics, from basic database concepts to advanced MongoDB and Mongoose. By the end of the course, you will be able to build and maintain complex database systems from scratch.
DevOps Engineer
DevOps Engineers are responsible for the design, development, and maintenance of software systems. This course can help you get started in DevOps engineering, as it covers a wide range of topics, from basic infrastructure management to advanced Node.js and MongoDB. By the end of the course, you will be able to build and maintain complex software systems from scratch.
Cloud Architect
Cloud Architects are responsible for the design, development, and maintenance of cloud-based systems. This course can help you get started in cloud architecture, as it covers a wide range of topics, from basic cloud computing concepts to advanced Node.js and MongoDB. By the end of the course, you will be able to build and maintain complex cloud-based systems from scratch.
Data Scientist
Data Scientists are responsible for the design, development, and maintenance of data science models. This course can help you get started in data science, as it covers a wide range of topics, from basic data analysis to advanced MongoDB and Mongoose. By the end of the course, you will be able to build and maintain complex data science models from scratch.
Product Manager
Product Managers are responsible for the design, development, and maintenance of software products. This course can help you get started in product management, as it covers a wide range of topics, from basic product management concepts to advanced Node.js and MongoDB. By the end of the course, you will be able to build and maintain complex software products from scratch.
Business Analyst
Business Analysts are responsible for the design, development, and maintenance of business processes. This course can help you get started in business analysis, as it covers a wide range of topics, from basic business analysis concepts to advanced Node.js and MongoDB. By the end of the course, you will be able to build and maintain complex business processes from scratch.
Project Manager
Project Managers are responsible for the design, development, and maintenance of software projects. This course can help you get started in project management, as it covers a wide range of topics, from basic project management concepts to advanced Node.js and MongoDB. By the end of the course, you will be able to build and maintain complex software projects from scratch.
Quality Assurance Analyst
Quality Assurance Analysts are responsible for the design, development, and maintenance of software quality assurance systems. This course can help you get started in quality assurance, as it covers a wide range of topics, from basic quality assurance concepts to advanced Node.js and MongoDB. By the end of the course, you will be able to build and maintain complex software quality assurance systems from scratch.
Technical Writer
Technical Writers are responsible for the design, development, and maintenance of technical documentation. This course can help you get started in technical writing, as it covers a wide range of topics, from basic technical writing concepts to advanced Node.js and MongoDB. By the end of the course, you will be able to build and maintain complex technical documentation from scratch.
UX Designer
UX Designers are responsible for the design, development, and maintenance of user experience. This course may be useful for UX Designers, as it covers a wide range of topics, from basic UX design concepts to advanced Node.js and MongoDB. While this course does not focus on UX design specifically, the skills you will learn can be applied to UX design in many ways.

Reading list

We've selected six books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Node.js, Express, MongoDB & More: The Complete Bootcamp 2024.
This comprehensive guide to MongoDB covers all aspects of the database, from its architecture and data model to its query language and administration. It valuable resource for both beginners and experienced MongoDB users.
Provides practical and real-world design patterns for Node.js development. It covers various patterns such as MVC, MVVM, and CQRS, and discusses their implementation in Node.js.
Covers the principles and best practices of building RESTful APIs with Node.js. It discusses topics such as API design, security, and performance, and includes many practical examples.
Quick start guide to MongoDB for Node.js developers. It covers the basics of MongoDB, such as its data model and query language, and includes many practical examples.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to Node.js, Express, MongoDB & More: The Complete Bootcamp 2024.
Guided Project: Build your first Node.js app
Most relevant
Guided Project: Build your first Node.js app V2
Most relevant
Developing Cloud Apps with Node.js and React
Most relevant
Full Stack Application Development Project
Back-end Application Development with Node.js and Express
Developing Back-End Apps with Node.js and Express
Understanding Node.js: Core Concepts
NestJS Zero to Hero - Modern TypeScript Back-end...
The Complete Node.js Developer Course (3rd Edition)
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser