Skip to main content
CF

Node.js API - making it shine!

8h 28m 7s
English
Paid

Welcome! In this course, we will explore the creation of a basic shop API using Node.js with Express.js and MongoDB. Our journey begins with an understanding of clean architecture, followed by an intensive dive into coding.

Course Overview

We will initially build our API using an in-memory database. Subsequently, we'll transition to utilize MongoDB and Mongoose. This approach illustrates the ease of migrating between libraries when employing solid architectural practices.

Testing and Methodologies

Our API will be thoroughly tested with Jest, employing the latest testing stacks and methodologies. You will gain knowledge on how to effectively test applications in modern development environments.

Core Concepts

Dependency Injections

The course offers insights into using dependency injections in a simple manner, highlighting the benefits of this technique.

Business Validations

We will implement business validations for the creation and updating of entities, ensuring that our API adheres to specified business rules.

Response Contracts

Learn to utilize response contracts to standardize the appearance of server responses, ensuring consistency and clarity.

Error Handling

An Application Error Handler will be crafted to manage exceptions and errors efficiently, responding with well-structured error messages.

Hands-On Exercises

After each module, you will engage in hands-on exercises to reinforce your learning. Solutions will be provided for immediate feedback and understanding.

Join Us

Embark on this journey to create a robust Node.js server. Enjoy and enhance your development skills!

About the Author: Udemy

Udemy thumbnail

Udemy is the largest open marketplace for online courses on the internet. Founded in 2010 by Eren Bali, Oktay Caglar, and Gagan Biyani and headquartered in San Francisco, the company went public on the Nasdaq in 2021 under the ticker UDMY. The platform hosts well over two hundred thousand courses across software development, IT and cloud, data science, design, business, marketing, and creative skills, taught by tens of thousands of independent instructors. Roughly seventy million learners use it worldwide, and the corporate arm — Udemy Business — supplies a curated subset of that catalog to enterprise customers.

Because Udemy is a marketplace rather than a single editorial publisher, the catalog is uneven by design. The strongest material lives in the long-form, project-based courses authored by working engineers — full-stack JavaScript, React, Node.js, Python data science, AWS, Docker and Kubernetes, mobile development with Flutter and React Native, and cloud certification preparation. The CourseFlix listing under this source is the slice of that catalog that has been mirrored here for offline-friendly viewing, organized by topic and updated as new releases land. Pricing on Udemy itself swings dramatically with the site's near-permanent sales, which is why the platform is best treated as a deep reference catalog: pick instructors with strong reviews and a track record of updating their material rather than buying on the headline price alone.

Watch Online 56 lessons

This is a demo lesson (10:00 remaining)

You can watch up to 10 minutes for free. Subscribe to unlock all 56 lessons in this course and access 10,000+ hours of premium content across all courses.

View Pricing
0:00
/
#1: About this course
All Course Lessons (56)
#Lesson TitleDurationAccess
1
About this course Demo
01:23
2
Project overview
03:24
3
Into the Clean architecture
02:07
4
Project start
03:16
5
Create basic server
04:21
6
User entity
04:13
7
In-memory DB
02:27
8
User's repository
08:45
9
User's repository tests
27:29
10
Product entity
05:04
11
Product's repository
03:08
12
Product's repository tests
24:49
13
Order entity
03:57
14
Order's repository
04:41
15
Order's repository tests
25:19
16
Add user use case
09:22
17
Add user use case tests
18:36
18
Get user by ID use case
01:42
19
Get user by ID use case tests
07:59
20
Update user use case
01:39
21
Update user use case test
08:08
22
Delete user use case
02:56
23
Delete user use case test
08:05
24
Add product use case
06:13
25
Add product use case tests
15:13
26
Get product by ID use case
02:10
27
Get product by ID use case tests
09:12
28
Update product use case
02:10
29
Update product use case test
09:10
30
Delete product use case
02:22
31
Delete product use case test
08:18
32
Add order use cases
14:47
33
Create order use case test
29:00
34
Response Contracts
05:30
35
Initialize controllers by creating add user controller
15:10
36
Get User by ID controller
05:51
37
Delete user controller
02:27
38
Update user controller
01:49
39
User's controller tests
24:52
40
Add product controller
09:44
41
Delete product controller
03:21
42
Update product controller
01:51
43
Get product by ID controller
17:10
44
Add order controller
09:41
45
Get order by ID controller
01:22
46
Update order controller
01:50
47
Delete order controller
12:25
48
Add application error handler
09:59
49
Add order business validations
21:22
50
Fix tests after adding business validation rules
26:13
51
Initialize Mongo with Mongoose
07:54
52
Create user's schema
05:09
53
Create product schema
01:48
54
Create order schema
02:05
55
Create Mongo users repository
17:23
56
Create products + orders Mongo repositories
21:46
Unlock unlimited learning

Get instant access to all 55 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.

Learn more about subscription

Related courses

Frequently asked questions

What prerequisites are needed before enrolling in this course?
This course requires a foundational understanding of JavaScript and basic familiarity with Node.js. Experience with Express.js and MongoDB is beneficial but not mandatory, as the course will cover these frameworks in detail while building a shop API.
What projects will I build throughout the course?
Participants will create a basic shop API, starting with an in-memory database and transitioning to MongoDB with Mongoose. The project involves constructing user, product, and order entities, along with their respective repositories and controllers, emphasizing clean architecture and dependency injection.
Who is the target audience for this course?
The course is designed for developers who are interested in building robust and scalable APIs with Node.js. It is suitable for those looking to improve their skills in server-side development using modern JavaScript frameworks and libraries.
How does this course compare to other Node.js API courses in terms of depth?
This course offers a detailed exploration of clean architecture principles, dependency injection, and comprehensive testing with Jest. Unlike some introductory courses, it provides a hands-on approach with practical exercises and in-depth coverage of transitioning between databases from an in-memory setup to MongoDB.
What specific tools and platforms will I learn to use in this course?
The course covers the use of Express.js for building the API, MongoDB and Mongoose for database management, and Jest for testing. It also includes setting up response contracts and error handling to standardize server responses and manage exceptions effectively.
What topics are not covered in this course?
The course does not delve into frontend development, deployment processes, or advanced MongoDB optimization techniques. It focuses primarily on backend API development and architectural principles.
What is the expected time commitment for completing this course?
The course consists of 56 lessons and includes hands-on exercises after each module. While the runtime is not specified, students should allocate time for both lessons and exercises, potentially taking several weeks to complete depending on their pace and prior experience.