Node.js: The Complete Guide to Build RESTful APIs (2018) (

Learn to build fast, scalable and secure RESTful services with Node, Express and MongoDB, from setup to production

Created by: Mosh Hamedani

Produced in 2018

What you will learn

  • Build the backend for your web and mobile apps
  • Use modern JavaScript features (ES6, ES7)
  • Implement CRUD operations
  • Handle and log errors, the right way
  • Write unit and integration tests
  • Practice test-driven development (TDD)
  • Store and retrieve complex data in MongoDB
  • Implement authentication and authorization
  • Deploy your Node apps to production
  • Apply the best practices for building fast, scalable and secure apps

Quality Score

Content Quality
Video Quality
Qualified Instructor
Course Pace
Course Depth & Coverage

Overall Score : 96 / 100

Live Chat with CourseDuck's Co-Founder for Help

Need help deciding on a node.js course? Or looking for more detail on Mosh Hamedani's Node.js: The Complete Guide to Build RESTful APIs (2018)? Feel free to chat below.
Join CourseDuck's Online Learning Discord Community

Course Description

What is Node.js?
Node.js, or Node, is a runtime environment for executing JavaScript code outside of a browser. It is ideal for building highly-scalable, data-intensive backend services (APIs) that power your client's apps (web or mobile apps).

Why learn Node?
Node is great for prototyping and agile development as well as building super fast and highly scalable apps; Companies like Uber and PayPal use Node in production to build applications because it requires fewer people and less code. Plus, Node has the largest ecosystem of open-source library, so you don't have to build everything from scratch.

A step-by-step, A to Z course
What you'll get when you sign up for this course:
  • 15 hours of HD videos, complete with exercises and solutions
  • A real-world project: you'll build the back-end for a video rental application, not a dummy to-do app!
  • No more wasted time on lengthy courses or out-of-date tutorials
  • Up-to-date and practical information and solutions (no fluff!)
  • The opportunity to learn at your own pace - lifetime access - so take your time if you prefer
  • Expert tips to become a Node rockstar
  • The best practices and common pitfalls to avoid
  • Watch on any device, online or offline - mobile friendly and downloadable lessons
  • Certificate of completion to present to your employer

You'll learn to:
  • Confidently build RESTful services (APIs) using Node.js, Express.js, and MongoDB
  • Employ the best practices for Node.js
  • Avoid common mistakes

What we'll cover:
  • Node module system
  • Node Package Manager (NPM)
  • Asynchronous JavaScript
  • Useful ES6+ features
  • Implementing CRUD operations
  • Storing complex data in MongoDB
  • Data Validation
  • Authentication and authorization
  • Handling and logging errors the right way
  • Unit and integration testing
  • Test-driven development (TDD)
  • Deployment

This course is for you if:
You're a back-end developer who is used to working with frameworks like ASP.NET, Rails, Django, etc. You want to add Node.js to your toolbox.
You're a front-end developer and want to transition to full-stack development.
You've tried other Node.js tutorials and found them to be too slow, out-of-date, and boring!
Having Node.js on your resume helps you find more jobs and make more money.

And here is what other students say:
"Absolutely the best! Highly recommended if you want to get started on Node.js from zero. I have learned what Node is and what it can do. Truly comprehensive. Perfect rating! Mosh knows his stuff and he deserves your support. On a side note, my current company uses Mosh's courses as a huge resource and reference when training / refreshing knowledge. I just want to say thank you! Please don't stop teaching. You were born with the talent to teach." -Eugene John Arellano

"Mosh is one of the top 3 instructors for modern web development. He explains difficult concepts with ease. I recommend all of his courses because of the amount of detail and his style of teaching." -Warren Isaac

"What I like most about the course is Mosh's methodology and the way how he explains the things. Very well structured course with high quality of presentation as well." -Omar Amrani

Who is your instructor?
Hi! My name is Mosh Hamedani and I help ambitious developers take their coding skills to the next level. I'm a software engineer with more than 15 years of experience and I've taught over 200,000 students through my online courses. My YouTube channel, Programming with Mosh, has been watched more than 6M times. My students describe my teaching as clear, concise, and fun, without any fluff.

Do you want to become a Node rockstar? Enroll in the course and get started.

Who this course is for:
  • You're a back-end developer familiar with frameworks like ASPNET, Rails, Django, etc. Now, you want to add Node to your toolbox.
  • You're a front-end developer and want to transition to full-stack development.
  • Having Node on your resume helps you find more jobs and make more money.

*Some courses are excluded from this sale. Coupon not working? If the link above doesn't drop prices, clear the cookies in your browser and then click this link here.
Also, you may need to apply the coupon code directly on the cart page to get the discount.

Coupon Code

Instructor Details

Mosh Hamedani

Hi! My name is Mosh (Moshfegh) Hamedani! I'm a passionate software engineer with two decades of experience and I've taught over 3 million people who to code or how to become professional software engineers through my YouTube channel and online courses.
My goal is to make software engineering fun and accessible to everyone. That's why my courses are simple, pragmatic and free of BS.



100 total reviews

5 star 4 star 3 star 2 star 1 star
% Complete
% Complete
% Complete
% Complete
% Complete

It contains all the necessary information needed to start making APIs with Node.js. Thank you very much for including testing Node.js code, and even TDD. Most courses neglect this part that I find very important.I have a good feeling that I can start making simple apps using Node.js, Express, MongoDB and covering them all with tests.Note for improvement: mLab is now part of MongoDB Atlas, so it would be super useful to update this last part where instead of mLab you create free DB on MongoDB Atlas and connect it to the application.

This is one of the best courses I've come across. There is nothing more one can expect out of a course. Course content, clear explanation for every single step and exercises. It delivered what it promised it would. And honestly I feel confident after finishing this course.Thank you, Mosh. Grateful! You are one of the best tutors.

Excellent course! Mosh is doing a great job explaining how stuff works and why. The only con I can think of is that the material is bit outdated sometimes (I completed the course at the end of 2019) but Mosh mentiones the verison of the package he installs every time so it's fairly easy to predict when something could go wrong and take a look at the docs yourself

Mosh does an incredibly good job presenting this course on Node JS. And overall he blew my expectations away and covered each area with great enough detail to be worth while including stepping through expected errors and how to address them. Unfortunately there is no 'complete' code base to draw upon. I searched github and found other's who had worked the course, but when I install & run none of them just worked either. So, lots of good training, just not workable for a final product. I must admit I like being introduced to all of the libraries, but would have preferred a full working simple app then start adding libraries piece by piece.

Mosh truly goes above and beyond, you get an excellent education in Node.JS and RESTful API's, but this is also a great course if you want to get a high level introduction into automated testing and Test Driven Development. Awesome work, highly recommended!

The instructor does a pretty thorough job by conveying not only the intended content, but also a lot of the auxiliary bits that make understanding the bigger picture that much easier. I feel much more confident in moving forward on a learning path of full-stack development after this course.

Definitely met my expectations and worth taking.There are few things where course can do better. For example, code is not always functional by the end of lecture, sometimes only in the next video there is a note to fix missing async statement or replace typo from export to exports; or recommendation to use libraries with very small number of users and loads is a bit odd; or such topics like sockets and OAuth not covered.But again, everything I tried out during course works, and I learned a lot. Special thanks for sharing method to write tests with happy pass scenario and configurable variables that's awesome.

There were a few packages that have been deprecated or had some changes since the course was created (as expected) but the overall content of this course and the way it was delivered was perfect for me! Mosh's pacing was great... I find some courses are too slow and contain too much fluff which causes me to lose interest but that wasn't the case with this course. I am a recent grad just getting my bearings as a developer and now I have another skill to add to my arsenal! Thanks a lot Mosh! Keep up the good work!

Mosh dok?adnie i w fajny sposb opowiada o Node.js:) Mo?e czasem troszk? zbyt dok?adnie. Jak kto? jest nowy w temacie, to mo?na si? pogubi?. Nie polecam te? instalowania wcze?niejszych wersji npm (potem ci??ko to odkr?ci?). Ale oglnie kurs super:)

Amazing course, I really like how he links the subjects to each other and apply them as a whole into a project without any fluff and so focused on the subject, also he always brings all of them at the the section before the the last one and keep us reminded of everything that we learned so far.

It's great when you have some missings spots in your javascript/node knowledge and you find the right tool to fill these blank spots. Had purchased this course some time ago, but only did the express part. I think everything is explained perfectly, if you combine this with some eagerness to read wikipedia and old articles you can really pick up the back end of a modern node/mongo express app like a snap. Thank you so much for the content, haven't finished it yet, but I feel very good about the flow of the course.

Love the Courses of Mosh, its perfect for my skill level, there is a red line though the entire course. :) Already bought the next course.