Learn NestJS - Complete Course

2024 ж. 25 Нау.
84 556 Рет қаралды

Learn NestJS in this comprehensive course for beginners. NestJS is a framework for building efficient, scalable Node.js web applications.
Code: github.com/HaiderMalik12/nest...
Course resources e-book: www.haidermalik.dev/nestjs
Testing Starter Kit for Module 12: drive.google.com/file/d/1dU4r...
✏️ This course was developed by @haidermalik3402 . Check out more of his courses: www.udemy.com/user/5512f7602d...
⭐️ Contents ⭐️
Module 0
⌨️ 00:00:00 What is NestJS
⌨️ 00:03:01 Create NestJS Project
⌨️ 00:05:30 NestJS Directory Structure
Module 1
⌨️ 00:07:00 Creating Controller
⌨️ 00:11:07 Creating a Service
⌨️ 00:18:09 Creating Module
Module 2
⌨️ 00:24:27 Middleware
⌨️ 00:32:39 Exception Filter
⌨️ 00:43:07 Transform param using ParseIntPipe
⌨️ 00:48:10 Validate Request Body using class validator
Module 3
⌨️ 00:52:09 Custom Providers
⌨️ 01:15:26 Injection Scopes
⌨️ 01:20:59 One To Many Relation
Module 4
⌨️ 01:35:05 Establish Database Connection
⌨️ 01:43:42 Create an Entity
⌨️ 01:50:43 Create and Fetch records from Database
⌨️ 02:08:54 Pagination
Module 5
⌨️ 02:17:44 One to One
⌨️ 02:24:14 Many to Many relation
Module 6
⌨️ 02:43:51 User Signup
⌨️ 03:00:05 User Login
⌨️ 03:08:12 Authenticate User with Passport JWT
⌨️ 03:24:42 Role Based Authentication
⌨️ 03:46:51 Two Factor Authentication
⌨️ 04:17:41 API Key Authentication
Module 7
⌨️ 04:32:52 Debug NestJS Application
⌨️ 04:37:00 Migrations
⌨️ 04:49:51 Seeding
Module 8
⌨️ 05:02:02 Custom Configuration
⌨️ 05:24:29 Validate Env Variables
⌨️ 05:35:48 Hot Module Reloading
Module 9
⌨️ 05:45:51 Swagger Setup
⌨️ 05:52:30 Document Signup Route
⌨️ 05:58:28 Create Schema using ApiProperty
⌨️ 06:02:54 Test JWT Authentication
Module 10
⌨️ 06:11:40 Install MongoDB using Docker Compose
⌨️ 06:18:16 Connect with MongoDB
⌨️ 06:21:24 Create Schema
⌨️ 06:24:56 Save Record in Mongo Collection
⌨️ 06:33:08 Find and Delete
⌨️ 06:38:47 Populate
Module 11
⌨️ 06:52:18 Configure Dev and Production Env
⌨️ 07:01:22 Push Source Code to Github Repo
⌨️ 07:06:38 Deploy NestJS Project to Railway
⌨️ 07:15:44 Install Dotenv to work with TypeORM migrations
⌨️ 07:20:20 Fixing Env Bugs
Module 12
⌨️ 07:29:45 Getting started with Jest
⌨️ 07:37:22 Auto Mocking
⌨️ 07:55:13 SpyOn Function
⌨️ 08:05:49 Unit Test Controller
⌨️ 08:19:35 Unit Test Service
⌨️ 08:28:19 E2E Testing
Module 13
⌨️ 08:41:58 Speedy Web Compiler with NestJS v10
⌨️ 08:50:31 Creating Websocket Server
⌨️ 08:59:05 Send Message from Frontend app
Module 14
⌨️ 09:05:48 GraphQL Server Setup
⌨️ 09:13:43 Define Queries and Mutations
⌨️ 09:20:11 Resolve Queries
⌨️ 09:25:42 Resolve Mutations
⌨️ 09:30:35 Error Handling
Module 15
⌨️ 09:34:14 Define Schema for Authentication
⌨️ 09:42:13 Resolve Auth Queries and Mutations
⌨️ 09:52:47 Apply Authentication using Auth Guard
Module 16
⌨️ 10:12:06 Implement Real time Subscription
Module 17
⌨️ 10:20:39 Unit Test Resolver
⌨️ 10:32:02 End to End Tesing GraphQL APIs
Module 18
⌨️ 10:46:55 Server Side Caching using Apollo
⌨️ 10:58:56 Optimize Query Performance using Data Loader
⌨️ 11:14:06 Fetching Data from External REST API
Module 19
⌨️ 11:20:56 Setup Prisma
⌨️ 11:24:25 Models and Migrations
⌨️ 11:28:08 Generate Prisma Client
⌨️ 11:30:43 Create, Find and FindOne
⌨️ 11:40:57 Update and Delete Operation
⌨️ 11:49:17 One to Many Relation
⌨️ 12:00:54 One to One Relation
⌨️ 12:07:33 Many to Many Relation
⌨️ 12:20:35 Bulk or Batch Operations
⌨️ 12:24:29 Implement Transaction using Nested Queries
⌨️ 12:32:56 Interactive Transactions
Module 20
⌨️ 12:46:08 File Upload
⌨️ 12:56:12 Custom Decorator
⌨️ 13:02:03 Scheduling CRON Task with Nest.js
⌨️ 13:14:41 Cookies
⌨️ 13:23:03 Queues
⌨️ 13:35:43 Event Emitter
⌨️ 13:47:13 Streaming
⌨️ 13:52:55 Session

Пікірлер
  • Thank you for publishing my course. You can also download the Free Nest.js E-book to follow along with the course www.haidermalik.dev/nestjs Subscribe to my channel for more free coding tutorials kzhead.info/tools/MVcSZa_ba8GxfIIz4OjJNQ.html

    @haidermalik3402@haidermalik3402Ай бұрын
    • Nice

      @user-qt4qd3ue7d@user-qt4qd3ue7dАй бұрын
    • Jzk

      @Tanner-cz4bd@Tanner-cz4bdАй бұрын
    • What's is called the theme that's you use on vs code in this Vedio

      @hshjakjqkqkk6310@hshjakjqkqkk6310Ай бұрын
    • @@hshjakjqkqkk6310 Material Theme

      @haidermalik3402@haidermalik3402Ай бұрын
    • Hey man, I really appreciate your effort for this course. Best♥

      @InitCode@InitCodeАй бұрын
  • I am currently on 3 hours and a half of the course, up until 3h it was really good, but then the instructor just starts copying and pasting code and rushing through it with little to no explanation, if you didnt pay attention to the course before it gets really chaotic. I highly recommend everyone watching to download the course e-book on description. Im going back and forth between the video and the e-book, and it works great in teaching when the instructor rushes through sections, the e-book has written explanations that sometimes are much more detailed than the video's.

    @Kishign@Kishign21 күн бұрын
  • Im confused. In 24:40 al lot of code was added without explanation. It not possible to follow the course.

    @gokufujison@gokufujisonАй бұрын
  • Thank you for using prisma too, seems better than typeorm

    @joshua5617@joshua5617Ай бұрын
  • remember that every programming language same in logic but different between them is functional programming and object oriented programming 😎😎 tip - enjoy whole video as fun video enjoy it throughly it's only way to become professional coder otherwise ai is there to replace who don't enjoy coding " steve jobs - only way to do great work is do whatever you love "

    @ananth129@ananth129Ай бұрын
  • thank you for this bro. Please just a thought though, I am trying to follow along and I noticed that you are using some files like those entity classes which you did not include in the book and you are also not showing it clearly for us to know the full details of the entity class you used. I also noticed that you are using an md file where the data is being copied from, but we don't have access to that. i am talking particularly from module 5 lesson 2

    @aguelejoseph5753@aguelejoseph5753Ай бұрын
  • For window OS, in 6:58, Maybe the script not working, let try this instead: "start:dev": "SET NODE_ENV=development & nest build --webpack --webpackPath webpack-hmr.config.js --watch", "start:prod": "SET NODE_ENV=production & node dist/main",

    @conghaule2533@conghaule253320 күн бұрын
  • nice course, easy for understanding what really happenning

    @ucanh5104@ucanh5104Ай бұрын
  • thx, plz teach nestjs along side angular

    @mahdiandalib186@mahdiandalib186Ай бұрын
  • 1:22:10 we don't have song and user entity at that time, we haven't installed typeorm yet

    @WanKy182@WanKy182Ай бұрын
    • you need to do module 4 first

      @kevinat71@kevinat71Ай бұрын
    • Than why is the section 3 section 4? @@kevinat71

      @auronvila1069@auronvila1069Ай бұрын
    • @@kevinat71 could you pelase provide the time stamp ?

      @rajanthaobeysekara8525@rajanthaobeysekara8525Ай бұрын
  • Please advance with GraphQl or tRPC 😅💯. I have been looking for this thanks

    @codeaperture@codeapertureАй бұрын
  • Just started to learn nest before two days ...

    @mdkarimul8923@mdkarimul8923Ай бұрын
    • And what is it

      @anyting1458@anyting1458Ай бұрын
    • @@anyting1458 just backend version of angular as I had already familiar with angular

      @mdkarimul8923@mdkarimul8923Ай бұрын
    • Same

      @Abilovv599@Abilovv599Ай бұрын
  • @freecodecamp pls bring complete course on data science , machine learning and AI in detail

    @mayureshbalsaraf2696@mayureshbalsaraf2696Ай бұрын
    • ++

      @amitshaw5936@amitshaw5936Ай бұрын
  • First here to learn

    @jtrickzz6959@jtrickzz6959Ай бұрын
  • I want to share my thoughts on the course content. While I enjoyed learning about Nest.js as a developer, there's a part that I found confusing. Around the 1:23:00, we started creating an entity without having TypeORM installed. I believe that it would be better for the instructor to start with TypeORM and talk about databases just a little and than move to the relations. I am not saying that the instructor is not explaining the things that I've mentioned but it does it in a poor order. I believe it's important for beginners to type out the code themselves and understand what each part does. The instructor sometimes copied and pasted code in the wrong places, which might lead to confusion for those trying to learn by following along. Despite this, I'm still excited about Nest.js and hope to see improvements in future updates to the course. It's a great framework that deserves clear and beginner-friendly teaching materials. @FreeCodeCamp

    @auronvila1069@auronvila1069Ай бұрын
    • you need to do the module 4 first before the 01:20:59 One To Many Relation chapter

      @kevinat71@kevinat71Ай бұрын
    • Thank you for the comment. I am looking for new KZhead videos topics

      @haidermalik3402@haidermalik3402Ай бұрын
    • @@kevinat71 checkout 1:35:13

      @rajanthaobeysekara8525@rajanthaobeysekara8525Ай бұрын
  • Something wrong with the order, cause in 01:20:59 One To Many Relation we already have part of code which will be in 01:43:42 Create an Entity

    @WanKy182@WanKy182Ай бұрын
    • Get from source code required codes

      @thepassionatecoder5404@thepassionatecoder5404Ай бұрын
  • i watched your course course

    @arslanshah7472@arslanshah7472Ай бұрын
  • great tutorial indeed however you could improve typing the code yourself rather than coping and pasting it , it makes it harder to grasp concepts also the way you were adding dependencies by just adding them to the package json and running npm install later it leaves us with no proper way on installing those packages later when we want to use them in our own projects later on otherwise its a great tutorial and i am almost halfway through

    @blayzehoodly2957@blayzehoodly2957Ай бұрын
  • Thank you

    @user-qg3fo9yf1d@user-qg3fo9yf1dАй бұрын
  • Nest JS and Next JS have such similar names, it took me a second here.

    @BrianHutchison@BrianHutchisonАй бұрын
    • Also Nust JS

      @user-zj5qe6cr5p@user-zj5qe6cr5p26 күн бұрын
    • Next JS - React JS Framework Nest JS - Node JS Framework Nust JS - Vue JS Framework

      @user-zj5qe6cr5p@user-zj5qe6cr5p26 күн бұрын
    • @@user-zj5qe6cr5p Node JS is not a framework, but a Javascript runtime

      @user-nf8zb4qp6j@user-nf8zb4qp6j25 күн бұрын
  • I need to create a web api. I never used node js but i used angular in the past. Should i go with express js or nest js? Thanks for any suggestions

    @edoardoremondini7729@edoardoremondini7729Ай бұрын
    • nestjs

      @mamupelu565@mamupelu565Ай бұрын
    • nest includes express and fastify

      @sandorium@sandoriumАй бұрын
  • Anybody how is the demand of this frame work in the market

    @ankitmajee@ankitmajeeАй бұрын
  • Honestly, is this worth learning, especially from an employment standpoint?

    @Donnshin@DonnshinАй бұрын
  • Let’s goooo 🎉🎉🎉🎉

    @JhayGrand@JhayGrandАй бұрын
  • How many JS frameworks there are? -Yes.

    @id104335409@id104335409Ай бұрын
  • Thankyou for this video, Please make a video on Vue.js

    @nehap2-6@nehap2-6Ай бұрын
  • there is no exception handling if you try to sign up an email that is already taken

    @blayzehoodly2957@blayzehoodly295729 күн бұрын
  • Ayer empeze a aprender jajajaja te quiero mucho freecodecamp

    @arturo8100@arturo8100Ай бұрын
  • Can I use React for the frontend for a NestJS backend?

    @rafikhankhadem6657@rafikhankhadem6657Ай бұрын
    • you can use anything

      @nivethan_me@nivethan_meАй бұрын
    • You can use a combination of any 2 frameworks for frontend and backend

      @GamingZone-ni6rs@GamingZone-ni6rsАй бұрын
    • yes nest builds a rest api or graph ql which can supports all js frontend frameworks and html css and js

      @blayzehoodly2957@blayzehoodly295728 күн бұрын
    • Yes

      @targettech2578@targettech257812 күн бұрын
  • any plans on a Symfony course? The one you have on your channel is 4+ years old and there were 3 major releases since then

    @evekaykay@evekaykayАй бұрын
  • Anyone can tell me which one is best for nest js in front end and in this course which is used in front end as backend is nest js

    @waseemahmad00@waseemahmad006 күн бұрын
    • There is no specific one, nest.js has no dependencies on specific frontend frameworks. see what frontend frameworks are requested in jbos in your current country, pick one and stick with it

      @aram8639@aram863918 сағат бұрын
  • Did anyone get this error: Error during migration generation: error: database "username" does not exist

    @thepassionatecoder5404@thepassionatecoder5404Ай бұрын
  • why u off the timestaps that was important as long video need

    @KaranGill-xw4zc@KaranGill-xw4zcАй бұрын
  • Wah wah wah

    @NitinKumar-qk1fi@NitinKumar-qk1fiАй бұрын
  • I Think: NestJS = Springboot + Angluar

    @congdatt@congdattАй бұрын
    • Well as someone who had been coding in nest js, angular and spring boot. I totally agree with this 😅

      @sam-nc8zv@sam-nc8zvАй бұрын
  • First ❤

    @anujmishra7834@anujmishra7834Ай бұрын
  • If i don't know about the node.js then and also can i see this ?

    @bc0216@bc0216Ай бұрын
    • No, learn node first

      @mandlankosi2160@mandlankosi2160Ай бұрын
  • 🔥🔥🔥

    @shobhitnair6346@shobhitnair6346Ай бұрын
  • is there any people who got error at 03:08:12 Authenticate User with Passport JWT

    @Dev-yt3rl@Dev-yt3rlАй бұрын
  • one project on nestjs+react+mongoose+redux+graphql

    @BhagatSinghJi.@BhagatSinghJi.Ай бұрын
  • Is it okay to learn NestJs without a background with react?

    @arlodecofrancispogosa7684@arlodecofrancispogosa7684Ай бұрын
    • do you want develop fullstack app? so no matter what you choose for frontend. but background in angular should help for starting in nest js

      @sandorium@sandoriumАй бұрын
  • Sería bueno que el curso sea una serie de videos así cada video se trata un capítulo de aprendizaje y también se puede dar un ejercicio para complementar lo aprendido Muchas gracias por enseñar

    @torressevillanosluisdavid9529@torressevillanosluisdavid9529Ай бұрын
  • is there anyone who completed the course?

    @Dev-yt3rl@Dev-yt3rlАй бұрын
  • Is there someone who concerned that in the near prioritete will be no-code platforms and programming language will be just Language like English.

    @Karen-Nazaryan@Karen-NazaryanАй бұрын
  • Set playback speed at 1.75. You are welcome

    @_justarandomone_8884@_justarandomone_8884Ай бұрын
  • this course has many errors after using env all routes are not working

    @blayzehoodly2957@blayzehoodly295722 күн бұрын
  • This course feels very jumpy. Lot of skips are noticed. So there is lack of continuity.

    @omkarjere@omkarjereАй бұрын
    • you need to do the module 4 first before the 01:20:59 One To Many Relation chapter

      @kevinat71@kevinat71Ай бұрын
  • Good course. But please don't use copy-paste code, write code yourself. Read helping material from another pc

    @sergeinazarov4653@sergeinazarov46538 күн бұрын
  • the course was good but it jumping from a video to another video then jumping back to another

    @danielkhozaie7249@danielkhozaie724917 күн бұрын
  • Will coding be replaced by Ai ? There are so many layoffs daily on the news i am following and learning from your channel will this be helpful for me in the future? Please reply ❤

    @hiyaghosh5102@hiyaghosh5102Ай бұрын
    • yes, eventually it will

      @user-nf8zb4qp6j@user-nf8zb4qp6j25 күн бұрын
  • Comment

    @usamasaleem5624@usamasaleem5624Ай бұрын
  • So there's Nextjs and there's NestJs

    @thedelanyo@thedelanyoАй бұрын
  • no audi

    @kidtheday@kidthedayАй бұрын
  • Damn the language barrier is too strong I think. It makes everything slower, but grats for the course :-)

    @joseeduardosaura1333@joseeduardosaura1333Ай бұрын
  • 1st

    @usamasaleem5624@usamasaleem5624Ай бұрын
  • At 1:20:39 you imported Column, Entity, PrimaryGeneratedColumn, OneToMany, and ManyToOne from typeorm when you had already installed typeorm behind the scenes without telling your audience to install it. Imagine someone with no knowledge wouldn't even know typeorm is a package that needs to be installed. You created a song entity behind the scenes and used it in the playlist entity without your audience knowing when and how you created the song entity. This course just lacks continuity because it seems jumpy. Man was literally just doing stuff off-camera and continuing from where he stopped whenever he start recording. Sometimes, the instructor just copies and pastes code which might leave beginners confused but then, nice content.

    @princewillduru7313@princewillduru7313Ай бұрын
    • lol i second you i am watching it now its a great tutorial but it is not beginner friendly especially just copy pasting code

      @blayzehoodly2957@blayzehoodly295728 күн бұрын
  • First

    @adityabhise466@adityabhise466Ай бұрын
  • first

    @themks8452@themks8452Ай бұрын
  • VelCome! Maybe I should delay learning nest

    @male3399@male3399Ай бұрын
  • Why, when DevinAI will be able to do this in a year or two?

    @ibizawavey8630@ibizawavey8630Ай бұрын
  • dissapointed by the video quality

    @3x10.8_ms@3x10.8_msАй бұрын
  • great tutorial but the guy doesn't explain well the whole tutorial he is always constantly opening the manual its better you read through it before the lesson and explain it later it makes it boring the way you do it

    @blayzehoodly2957@blayzehoodly2957Ай бұрын
  • Ah that name is nasty. It screams “I want to steal a piece of the fame that Next.js has”

    @TheRafark@TheRafarkАй бұрын
    • They are not at the same lane. One is pure backend, the other is backend + frontend. You can see similarities with Next.js and Nuxt.js where first uses React, second uses Vue. And I bet Next.js was not that popular when it was released on 2016 that worth to be "stolen".

      @bugraotken@bugraotkenАй бұрын
    • A quick look at the release dates would've told you not to make this post.

      @st8113@st8113Ай бұрын
  • What reason to learn programming if AI exist? (Except as a nonprofit hobby)

    @mndtr0@mndtr0Ай бұрын
    • Well most of the time when you building complex projects. You have to debug lots of the ai generated code.

      @sam-nc8zv@sam-nc8zvАй бұрын
    • you know nothing about code yet

      @blayzehoodly2957@blayzehoodly295728 күн бұрын
    • @@blayzehoodly2957 everybody now a programmer

      @mndtr0@mndtr028 күн бұрын
  • This is very very poorly executed tutorial i have ever seen, very vague...no clear understanding ...just seems like the guy is tryna finish a lecture in a class.

    @amantripathi9811@amantripathi9811Ай бұрын
  • why not stop war in palestine ?

    @irfansaeedkhan7242@irfansaeedkhan7242Ай бұрын
    • Double standards brother.

      @awali016@awali016Ай бұрын
    • Obviously Ukraine is more important for whatever reason than stupid Palestine

      @nicklesydney180@nicklesydney180Ай бұрын
    • They don’t care ! They need money that’s it

      @aun7980@aun7980Ай бұрын
    • Ask you Dubai sheikhs

      @Bhavishya_est@Bhavishya_estАй бұрын
    • ?

      @kushagra892@kushagra892Ай бұрын
  • coding is dead

    @nested9301@nested9301Ай бұрын
    • then what is alive

      @Sarajboos12@Sarajboos12Ай бұрын
    • Bro you sound like "Do we not hear anything yet of the noise of the gravediggers who are burying God? Do we not smell anything yet of God's decomposition? Gods too decompose. God is dead. God remains dead. And we have killed him. How shall we, murderers of all murderers, console ourselves?"

      @Dr.Funknstein@Dr.FunknsteinАй бұрын
    • Lol. Ok, good luck with your hotdog stand...

      @fedvvvv@fedvvvvАй бұрын
    • @@Dr.Funknstein bruh god does not exist in the first place it is just a myth

      @nested9301@nested9301Ай бұрын
  • tooo long

    @lordlogan3308@lordlogan3308Ай бұрын
  • Maangoes db

    @BugMug09@BugMug09Ай бұрын
  • anyone else having trouble with the create-song-dto.ts decorators? i cant seem to make them work

    @fabr0@fabr0Ай бұрын
    • I was having a problem when I put it in lowercase letters like @isNotEmpty(), you need to pass the decorator like this @IsNotEmpty()

      @acryan26@acryan26Ай бұрын
    • @IsArray() @IsString({ each: true }) @IsNotEmpty({ each: true }) readonly artists: string[]; It will work now

      @sanchitmishra6078@sanchitmishra6078Ай бұрын
KZhead