인프런 영문 브랜드 로고
인프런 영문 브랜드 로고
BEST
Programming

/

Back-end

[Code Factory] [Beginner] NestJS REST API Backend Complete Master Class - NestJS Core

JavaScript, TypeScript, and then backend development! You will be able to develop REST API backend using NestJS, and develop and deploy Socket IO.

(5.0) 78 reviews

1,374 students

NestJS
REST API
backend
JavaScript
TypeScript
Thumbnail

This course is prepared for Basic Learners.

What you will learn!

  • NestJS

  • TypeORM

  • Postgresql

  • Docker

  • Docker Compose

  • REST API

Anyone can do it, even if it's their first time with backend!
Learn server development with trendy NestJS.

NestJS Framework Master Class: Part 1

We focus on learning all the core features used in the lifecycle of NestJS, a Node.js-based backend server framework.

If you have learned JavaScript or TypeScript
Now it's backend development!

  • Learn how to properly use the detailed features of NestJS and various annotations .
  • We provide detailed lectures that are faithful to the documentation.

If you only know Javascript and Typescript, you can learn how to build a REST API with NestJS and deploy it to production in various ways on AWS using Socket IO through this course.

Anyone who wants to learn Node.js-based backend server technology

For those looking for follow-up lectures after learning JS/TS

Anyone who wants to learn trendy and popular backend technologies

This course is not just a superficial beginner's course on how to get started with NestJS. It covers all the features provided by NestJS and gradually increases the difficulty level, so you can learn through examples which features to use in which situations .

If you are curious about the basics of JS/TS


What you learn
Check it out.

💡 We have created a detailed curriculum that gradually increases the difficulty so that even students who are learning backend and REST API design for the first time can follow along. Learn backend design by designing a backend that imitates Instagram, one of the most popular SNS.

You will be able to build and deploy a REST API backend using NestJS.

You can design various databases using TypeORM.

Let's develop and implement a real-time chat service using Socket.IO.

You can set up a development environment and a production environment using Docker.

Detailed Curriculum

1. Introduction to the lecture and various theories

Acquire the basic knowledge required to learn the NestJS course. It is based on keynotes and contains not only information about NestJS, but also essential knowledge before starting practical work, such as a backend engineer guide, a simple overview and technical explanation of Node.js, HTTP, and an introduction to NestJS.

2. Preferences

We'll go through the setup on macOS and Windows to learn NestJS.

3. Server configuration using Node.js and Express

We will configure a server using HTTP, a package provided by default in Node.js, and briefly configure a server using Express, a popular Node library used internally by NestJS, and examine its pros and cons.

4. Organize the project concept

Explains the Instagram SNS concept that will be used in the lecture.

5. Controller

Learn about controllers, one of the front-line elements that make up NestJS's REST API.

6. Query and Parameters

Among the various ways to receive data from the controller, we will learn about using Query and Parameter.

7. Service

Let's implement a service that handles the logic to be executed in the controller.

8. Module, Provider and Inversion of Control (IoC)

Learn about modules, which are responsible for grouping together multiple components that make up an API, and how Provider Dependency Injection is performed through an IoC container.

9. SQL and Docker

Learn basic SQL knowledge to connect databases in Nest. Additionally, learn briefly how to use Docker to run Postgresql.

10. Connecting to a database with TypeORM

Learn how to manage data by linking with Postgresql using TypeORM so that data previously managed only in memory can be managed in the long term.

11. TypeORM Theory (Function Summary)

This is a theoretical lecture that provides an overall overview of TypeORM's features. You will learn about commonly used functions and parameters.

12. Table Relation

Learn the theory and implementation using TypeORM about One to One Relationship, One to Many Relationship, Many to One Relationship, and Many to Many Relationship.

13. Using the Debugger

Learn how to set up the NestJS debugger in VSCode and use it to debug.

14. Authentication

Learn about authentication procedures using tokens and how to build a login/membership system.

15. Pipe

Explore the many uses of Pipe to validate and transform values.

16. Implementing BaseModel using inheritance

Learn how to avoid creating repeated properties and columns when implementing tables with TypeORM.

17. PgAdmin

Learn how to query Postgresql database tables using PgAdmin.

18. Guard

Learn about Guard, which is responsible for protecting endpoints and controllers.

19. Custom Decorator

Let's create a Decorator ourselves and explore what kind of logic can be implemented using the Decorator.

20. Deepening Postman Features

In addition to the ability to simply send requests, you will learn about features that will make API testing more efficient, such as how to use environment variables, how to set up the Environment, how to set up Tests, and how to load tokens.

21. Class Validator

Learn about Class Validator, a feature that allows you to validate class properties using Decorator.

22. Class Transformer

Learn about Class Transformer, a feature that allows you to transform class properties using Decorator.

23. Pagination Basics - Cursor Pagination

Learn the most basic way to implement cursor-based pagination.

24. Pagination Basics - Page Pagination

Learn the most basic way to implement page-based pagination.

25. Pagination Deepening - Generalizing

Learn how to generalize logic so that you can easily implement pagination across multiple endpoints.

26. Using the Config Module

Learn how to use the Config module, which allows you to inject environment variables into the NestJS framework.

27. File Upload - Classic Method

Learn about the most classic file upload method.

28. Static File Serving

Learn how to set up NestJS to serve static files externally. Continuing from the previous section, learn how to view uploaded files via links.

29. File Upload - Pre-Upload Method

Learn how to implement file uploads in a relatively faster way than the classic method by first uploading the file and then providing only the file path, rather than bundling all data at once with Form Data.

30. Transaction

Learn how to implement the transactional functionality of a database, which is an All or Nothing feature, using TypeORM.

31. Interceptor

Learn how to use interceptors in NestJS and simple RxJS usage. Learn how to implement transactions as interceptors with a nice example.

32. Exception Filter

Learn how to use Exception Filter, a representative method of exception handling in NestJS.

33. Middleware

Learn about the middleware that is applied first to incoming requests in NestJS.

34. Websocket Socket.IO - Basics

Learn the basics of using Socket.IO.

35. Websocket Socket.IO - Advanced

Let's learn about various decorators related to Socket IO provided by NestJS.

36. Module Nesting

Let's explore the need for creating submodules using a Post-Comment example.

37. RBAC - Role Based Access Control

Learn how to implement RBAC-based APIs, which are especially important when building server functions related to admin pages.

38. Authorization

Learn how to build authorization functionality in NestJS style.

39. Following System

Let's implement a following system.

40. Working with Follow Count and Comment Count

Let's implement logic related to various Count functions.


More than 9,000 cumulative students
This is the knowledge sharing code factory!

I have been active on Inflearn and YouTube since the start of the Flutter lecture in 2022. I achieved the Inflearn 2022 Rookie of the Year with only the Flutter lecture, which is a relatively small ecosystem, and now I am preparing various lectures to expand the lecture pipeline toward my main technology areas, Javascript stack, DevOps, and cloud.

(People met by Infraon, Code Factory Interview >>)

If you find it difficult to judge my teaching ability from Javascript lectures, check out the Flutter lecture reviews on Code Factory in Inflearn! Code Factory will always be developing and producing good lectures.

★★★★★

I am a 17-year developer. I recommend this course to those who are new to Flutter, and it is also very useful for practical projects. There is no better course than this. This is the real deal. It is a course that is so neatly explained that I feel like I am paying a lot for it, and it is a course that has helped me a lot.

★★★★★

This is a lecture that is really close to perfection. I bought almost all the books to study Flutter, and I also looked at a lot of online clone coding. I also listened to lectures on other platforms that explained Flutter step by step. But this is the most useful. It is the most practical and cost-effective. I sincerely advise you to learn this first and fill in the gaps.

★★★★★

Among all the lectures, I think Code Factory's lecture is the best of the best. Most of the other lectures I've seen tend to neglect or skip over certain parts, so as a learner, I often miss the connection and feel regretful, but Code Factory's lecture is not like that. Once you listen to it, you won't regret it. Rather than regretting it, I think you'll be satisfied and become a true fan like me.

★★★★★

I think this is one of the best lectures on Flutter among all platforms, YouTube, and offline lectures worldwide. I am so glad that I can take this lecture because Korean is my native language. I think there is no other lecture that is as good as this one, where practical and technical parts are balanced, and where you can properly understand the concepts one by one and go through the steps.

Special additional benefits for students

1) I regularly do live broadcasts on YouTube . I receive all types of development concerns and questions, and I try to allocate time to answer immediately if you have difficulties while giving lectures. Don't be stressed out because of an instructor who can't communicate anymore!

2) After purchasing the course, you can enter the paid Discord community by authenticating your Infraon email. Also, please actively utilize the Code Factory official Kakao channel, which is very active!

3) No matter what programming technique you learn, setting up the environment is one of the elements that students find very difficult. Of course, trying to solve it yourself is a very important element to become a good developer, but if you absolutely cannot do it, don't delay and use me. Come to the Kakao channel, tell me about the lecture, and then apply remotely. After coordinating the time, I will personally take care of all the environment settings! Don't give up before you even start!

Go to Code Factory integrated link


Q&A 💬

Q. I learned JavaScript/TypeScript, but I don't know what to learn next.

If you are familiar with Javascript and Typescript, you are ready to move on to libraries or frameworks based on JS/TS. NestJS is one of the most popular frameworks in the JS/TS world. Learning NestJS will broaden your career options and help you choose the next technology to learn. If you are not sure what to learn, start studying with Code Factory's NestJS course!

Q. I know JavaScript/TypeScript, but I want to learn server technology.

NestJS is the most popular server framework in the JS/TS world. Many people start their servers with Express, but it is better for beginners to learn the well-structured NestJS framework first. Furthermore, NestJS uses Express internally, so you can learn how to use Express as well.

Q. I want to learn server, but I don't know which framework to choose.

Nowadays, you can learn various server frameworks. There are many other frameworks besides NestJS, but among them, NestJS is the most loved framework in the world and is one of the most used frameworks especially in MSA. If you want to learn a framework that is future-oriented and at the same time loved right now, choose NestJS!

💾 Guide to the practice environment

Before taking the course, please check the OS and PC specifications you are currently using.

Windows

  • WSL version 1.1.3.0+
  • Windows 10/11 64bit Home or Pro 21H2 version or later
  • 4GB or more RAM
  • Systems capable of Hardware Virtualization

macOS Intel

  • macOS 11 or later
  • 4GB or more RAM
  • Systems without VirtualBox installed

macOS ARM64

  • No requirements as of September 18, 2023 (compatible with all latest M series MacBooks)

📢 Learning materials, player knowledge guide

Recommended for
these people!

Who is this course right for?

  • People who want to learn REST API backend development

  • Just finished the Javascript and Typescript courses

  • People who want to learn Node.JS

Need to know before starting?

  • Javascript

  • Typescript

Hello
This is codefactory

Students

24,321

Reviews

1,202

Rating

5.0

Courses

6

안녕하세요 프로그래밍 강사 코드팩토리입니다!

코드팩토리 통합 링크
https://links.codefactory.ai

 

🏭 코드팩토리 유튜브 바로가기
🔥 코드팩토리 Discord 바로가기
💬 코드팩토리 카카오 오픈톡 바로가기

 

💼 주식회사 코드팩토리 대표

 

🏆 2023년 인프런 베스트셀러 수상

🏆 <<Must Have 코드팩토리의 플러터 프로그래밍>> 서적 2023 상반기 교보문고 컴퓨터/IT 부문 베스트셀러 23위

🏆 AWS Certified Developer Associate

🏆 AWS Certified Solutions Architect

Curriculum

All

214 lectures ∙ (24hr 36min)

Published: 
Last updated: 

Reviews

Not enough reviews.
Become the author of a review that helps everyone!