NestJs Course for Beginners - Create a REST API
Learn NestJs by building a CRUD REST API with end-to-end tests using modern web development techniques. NestJs is a rapidly growing node js framework that helps build scalable and maintainable backend applications.
In this course, we build a bookmarks API from scratch using nestJs, docker, postgres, passport js, prisma, pactum and dotenv.
💻 Code: github.com/vladwulf/nestjs-ap...
✏️ Course from Vladimir Agaev. Check out his KZhead channel: / @codewithvlad
⭐️ Course Contents ⭐
⌨️ (0:00:00) Course introduction
⌨️ (0:01:15) What is NestJs
⌨️ (0:02:35) Why using NestJs
⌨️ (0:03:35) What we are building
⌨️ (0:03:55) NestJs project setup
⌨️ (0:05:55) Modules
⌨️ (0:15:30) Auth module
⌨️ (0:19:50) Dependency injection
⌨️ (0:20:30) Auth controller
⌨️ (0:26:50) Setting up postgres in docker
⌨️ (0:29:10) Setting up prisma
⌨️ (0:32:10) User & bookmark models
⌨️ (0:35:50) Running prisma migrations
⌨️ (0:40:10) Prisma module
⌨️ (0:52:10) Using auth dtos
⌨️ (0:57:45) NestJs pipes
⌨️ (0:59:10) NestJs global pipe
⌨️ (1:02:50) Hashing user password with argon
⌨️ (1:03:20) Sign up logic
⌨️ (1:13:13) Sign in logic
⌨️ (1:16:50) Automate postgres restart & prisma migrations
⌨️ (1:27:40) NestJs config module
⌨️ (1:34:40) Using passport js & jwt module with nestJs
⌨️ (1:55:10) Get current user with access token
⌨️ (1:57:00) NestJs Guards
⌨️ (2:12:10) NestJs custom param decorator
⌨️ (2:27:10) e2e tests with pactumJs
⌨️ (2:35:10) Setting up test database
⌨️ (2:36:10) Automate test database restart & migrations
⌨️ (2:37:10) Using dotenv cli with prisma
⌨️ (2:44:30) Prisma database teardown logic
⌨️ (2:53:10) Auth e2e tests
⌨️ (3:02:01) User e2e tests
⌨️ (3:13:20) Bookmarks e2e test
🎉 Thanks to our Champion and Sponsor supporters:
👾 Raymond Odero
👾 Agustín Kussrow
👾 aldo ferretti
👾 Otis Morgan
👾 DeezMaster
--
Learn to code for free and get a developer job: www.freecodecamp.org
Read hundreds of articles on programming: freecodecamp.org/news
Thank you Beau! I really enjoyed making this course, I hope that it will be helpful to anyone who wants to learn about NestJs! 😊
Thanks Vlad
Thank you for your video. I finished it, it was excellent
Vlad, you are a legend bud! Keep it up, love the way you work!
@Ojeomokhai Samuel Thank you for asking. In fact I do. I will keep you guys posted on my channel!
getting this error , can help const core_1 = require("@angular/core"); ^ Error [ERR_REQUIRE_ESM]: require() of ES
Where tf does youtube take me when I fall asleep
🤣🤣🤣
😂😂
Omg for reallllll 😂
They're trying to make us learn
i can say i an a victim too😭
@1:22:30 for windows users use timeout 1 instead of sleep 1. Thanks.
Thank you so much. You just helped me solve this problem. I've been searching for a while now.
Ayyy thanks
At 1:12 / 1:13, you will now probably have to replace "error instanceof PrismaClientKnownRequestError" with "error instanceof Prisma.PrismaClientKnownRequestError" and do "import { Prisma } from '@prisma/client'"
Thanks this helped me to solve the issue!
Thanks m8, this was helpful!
ahh you already wrote that, didnt see it and wrote a comment about it too :)
Great comment
br i was stuck at this for a solid 15 minutes and decided to check the comments, tysm
This is totally amazing. All the other tutorials touches only on some very basic stuff, and this is full proof stuff with test and all that! Really amazing job!
This is one of the first fcc videos, that I watch from beginning to end. The instructor was just amazing and I learned tons of tricks along the way. I usually code api's at work with fastapi, but nestjs is a nice weapon for my arsenal. Thank you Vlad!
If you get stuck somewhere, run `npm run build` from terminal. For eg; ValidationPipe issue.
you are the man
tks for the tip!
Dude... you're a fantastic teacher. Hands-on approach is the only thing that works for me. The only time I really soak in information is when I apply it in practice. Thank you so much for this easy-to-follow tutorial. If you're a viewer finding this tutorial hard, don't despair. Many of us have a background in another backend framework (Ruby on Rails in my case) so we are very familiar with many concepts talked here. Just keep practicing until it sticks with you, we were all in your shoes once so you'll get there too.
Spent a long time searching for a good guide on using nestjs with Prisma and gotta say this is an amazing guide that came out at the right time.
This course is so amazing! What a wonderful legendary teacher! you properly introduce each concept theoretically and then trough practice you make things concrete in minds.
Everything about this tutorial was more than perfect, the walkthrough, detailed explanation and also the test environment setup, thanks for your hard work, much appreciate it.
For Windows users, instead of sleep 1 put node -e \"setTimeout(()=>{}, 1000)\" on your package.json PD: Thanks Vlad, one of the best courses I've seen 💯
thanks
thanks
What an amazing course! I am a react native developer. Found this tutorial so informative and easy to understand. Very well structured 👌 Would love to work with such developers ❤️
Fantastic training by building an app while you watch, and explaining why stuff is important, but moving on quickly, such a broad coverage of different libraries and tools. I have watched it several times. This will be important for my new job. Thanks.
I just switched from Rust/Axum to TS/NestJS. The developer experience with TS and NestJS is hands down beautiful.
I listened to around 45 minutes for now, and this seems like a really easy and intuitive way to teach. I read about NestJS and started utilizing it recently, but this video makes my understanding of NestJS really stronger and I appreciate it. You earned yourself another subscriber. :)
I listened to around15 minutes and woke up at 3 hours 05 and have absolutely no idea what happened. Is food ready?
Great tutorial! Needed to write a new API for a side biz and was itching for something new. NestJs is very slick, glad I gave it a try. This is the first time I've felt that same productivity boost of Rails from the early days.
such a beautiful and easy to follow teaching, you do focus on explaining advanced concepts and giving us exactly what is going to make us PRO, SO MUCH LOVE TO YOU SIR
I decided to develop my project with prisma and nest thanks to you. Your course very very clear and comprehensible.
Wow! This course is soo dense of precious information! Thank you very much Vlad for sharing your knowledge with us in a such clean and understable way!
It is safe to say that I've never watched a better tutorial and I'm not even exaggerating. NestJS is amazing and explained by you seems even more amazing. wow, hope you have a udemy account so I can follow and purchase more of your courses.
if you have hard time with docker like i did. Then run: docker pull postgres and chane postges-13 to postgres:latest in docker-compose
I quickly browsed through the video and I have to say that this is high quality! Awesome job and thank you for sharing it! Perhaps we could see something similar done with a fullstack framework such as Nextjs or Nuxtjs?
Here is a good course about NextJS: kzhead.info/sun/ZLumfrx9jZuXa4E/bejne.html
I rarely post comments, but when I get content like this, I need to! Thanks a lot for the good work, the explanations are clear and complete. Thanks a lot, it will definitely improve my nest js skill !
❤️ NestJS It makes backend dev so quick and the integrations with SwaggerUI and TypeORM are amazing!
TBH this is the best youtube channel I've ever seen. Keep up the amazing work
Thank you very much Vlad for so clean and great explanations. I recommend this course for everyone who is willing to learn by doing.
Thank you! The information in this tutorial is compressed so much that it made me learn more than most 10+hrs content. This video is going to act as a quick reference handbook on nextjs for a while for me.
Unbelievable! Folks sell such a course hundreds of dollars while it's freely delivered here. Keep it up, the world needs many more of you guys.
I've watched the first hour of this video. I will continue watching, just wanted to say thank you so much. I really enjoyed following you and this tutorial was exactly what I needed. You got yourself a new subscriber. Keep up the good work 💪🏼👊🏼
2 hours and 22 minutes down, this course is absolutely amazing, and NestJs really is a powerful tool :D
I was looking for a NestJs tutorial. You really read my mind) please make advanced version also🙏🏻 with projects
I've already watched half of it and am amazed by how good this video is. Tells you about many possibilities of nestjs and so easy to understand
Very comprehensive! I hadn’t even heard of NestJs until I saw this video and now I want to use it 👍
you are a very good teacher, the speed and explanation is just okay. i'm currently learning nestJS from this course .
Thank you very much! I really learn a lot from this course.I met many problems which I can not slove them,but when I study this course , I can handle these problems by myself.
Awesome tutorial! Just what I needed for a NestJs refresher :D Thanks a lot!
Followed and enjoyed every bit of this lesson! My journey to fullstack development starts here! Thank you!
I have watched and also coded with tutors like 400 tutorials till today (I am counting the number =)) but this tutorial was one of the best tutorials I have ever watched by so far. Very neat, crystal, no questions in my mind, nothing like "tutor does something but you fail with the same code", very helpful. Thanks god there are streamers like Vlad!
Super solid tutorial - I've been using NestJS for about 6 months - it is a super solid platform for backend REST APIs. I went through this tutorial to learn more about Prisma as an ORM. I love the way you describing Prisma's automatic type generation as "very awesome" at 38:29 . Please make more content regarding NestJS best practices!
it is awesome because other orms have schemas and models as two separated files, so you have to do twice the work. For example in adonisjs with lucid orm you have to manage the model and migration file all by hand.
@@nobytes2 I actually like it that, keep your schemes and models separated that way they are not tightly coupled
Hey man, just finished your tutorial. I am a frontend React developer for almost 2 years, I've been wanting to learn backend development for quite a while and your NestJS tutorial is simply amazing and well taught. Thank you!
Hey Evandro, did you know node-express before starting this? Can i start with it if i do now know about it?
@@jasmeetsinghratra7551 I knew but it's totally ok if you don't know. They're pretty much different but equally fine to learn
I need a remote job@@reandov
It was so amazing NestJS tutorial. I used to think that learning NestJS would be difficult for me. However, through this tutorial, I could understand the fundamental concept of NestJS. Thank you very much for your kind tutorial.
Thanks for the awesome tutorial!!!! Please bring more ^_^ But one suggestion: in the tests when you are making use of the "stores" funcionality from "pactum" lib to save variables to use further in next tests... it's not the best approach, because you are creating dependency between the tests when the recommended way is to write tests with scope isolated and independent of each other, so than when one test fails, it will not causing others failing in cascade.
watched through it all while going to school, probably the best tutorial i have ever watched
Never self-code API Backend but with only first time to watch your video, i understand many thing about it. Thank you very much!
one of the best courses on nests Lotts of love FCC and Vlad
I love this framework. I've only ever used Express and nest but I never want to look back again
This was a very good presentation, we did a lot more than just your basic todo list app. Thank you very much for this awesome video = ). I bet every1 that had never used nest before can now confidently dig into a production app and start working right away.
The lecture was excellent, it gave me a little insight into NestJS - This is a great framework!👨💻
Vlad is a great teacher. Learnt so much from this course.
Very well done Vlad! Tons of useful information and techniques!
Fantastic introduction. My club leader announced our next project will use NestJS and I was thrilled to see such a comprehensive and up-to-date tutorial.
A well done tutorial. I needed to catch up as my company uses NestJS and I've completely lost track. Now, I am back.
Great course, helped me to get into Nest.js framework for the first time!
An another huge piece of Javascript 🔥
I was waiting for that Tutorial for ages, thanks!
One of the best courses from Free Code Camp!!
This was absolutely a awesome course, Thank you so much! Nest is a little weird with those decorators. Your icon pack in visual studio is different then mine they actually show the nest logo... I use night owl by Sarah Drasner for a theme and the icons vscode-icons. I highly recommend!
Also to have this free is great! I pay 40$ a month for frontendmasters
I don't know how to thank, man. It is the best tutorial I have ever seen on youtube. Just amazing!!!!
This tutorial has been amazing. Everythings been clearly explained at a not too fast not too slow pace and your accent is cool too!
Loved every minute of this course ! Really thumbs up and lots of respect to the effort put in to make this awesome course. Thank you ☺
Thanks Vlad, this is the best nest js tutorial I've ever seen
Vladimir is very professional and I have learned a lot from him, thank you for making this high-quality course!
didn't know the Russian president makes programming courses as well, nice
@@meme_engineering4521 well, it's not easy to put food on the table nowadays because of the sanctions, he had to change his career!
@@walidrashed3940 haha nice one😂😂
one of the best tutorials I've ever watched, totally worth the time
Yo you guys are one of the (not not the) best youtube channel for learning new development stuff. love to you guys and thanks for your content 😄
Thanks, it's great because Nest is most popular framework in nodejs, and prisma it's new orm 👍
Thank you for an impressive tutorial. From someone like me coming from other languages like C#, Java. Then I really learned a lot and got a good understanding.
Thank you! This is really a fantastic understandable course! Thank you so much
A few beers and 2 nights and i mastered NESTJS. Thanks!
Very very nice tutorial. Just one regret is that there are too much testing for beginner tutorial, would have prefered to see a lit bit of client integration to display the CRUD oprations, but it doen't take out the amazing job done by Vlad. Thank you
Thanks for this tutorial video. It helps me to start with NestJS and i think the way you explained it really awesome.
Thank u man, your teaching style is excellent. It was too easy to understand
Thanks for the video, bro! As a note for improvement, the intricacies of the framework are not easy at all, especially for beginners, as the video is intended. I think the delivery of most concepts could be slower and more thoroughly explained.
Thank you thank you so much, May God bless you. By far the most amazing tutorial I ever got to learn from.
Awesome work! Thanks a lot for sharing this knowledge!
Some heads up fellow learners, I faced some issue: if you face issues, after changes to your schema, use npx prisma dev push, use import { Prisma } from "@prisma/client"; error instanceof Prisma.PrismaClientKnownRequestError for caching the error code. Great course.
Dude.. great tutorial man!!! loved the details, content and overall story of the tutorial!!
Incredible work. Thank you very much!
amazing course ! thanks a lot Vlad :) ...i recommend this video to anyone who wants to learn the basic concepts of nest clearly
Thanks a ton for this amazing tutorial! Just had one small question, how do I go about splitting the e2e tests into multiple files? Keeping everything in one file is getting a little overwhelming
This is an amazing tutorial. Thank you!
This is the best course about Nest I was see, very complet and perfect learn. Thanks to all people that will made this possible. Hug!!!
The tutorial we needed on FCC.
Wonderful teaching, I am so grateful for this. Thanks! 🙏🏻
Thank you Vlad, I enjoyed this. It was more than an eye opener.
Nice course! Thanks, Vladimir and FCC
the pattern is very spring framework alike, excellent tutorial!
Hi, when i came here to watch this tutorial come having nothing knowlage about nest js, but now i'm very happy full cause i learn it in the best way with this tutorial thanks so match
FOr some reason, throw ForbiddenException no longer working as showed in video
This is much much appreciated! Awesome way of teaching by doing
Awesome Tutorial, NestJS maybe the best NodeJS Framework nowadays
hey guys, if you had issues 02:05:01 that property 'user' doesnt exist on request , try to change Request | any , it solved this problem
thanks dude, i was looking for this comment
Thanks, Any idea why the error happened?"
Thank you, Vlad! Every thins is explained very nice.
Thank you this helped a lot i joined new company and they were using nest js and I wanted to learn if quickly and start working this helped a lot... Thank you 💘💘💘
Thanks for the guide! I learn Nest and this course is good for understanding and first experience
I learned a lot, thanks Vlad!
Хороший курс, спасибо :)
amazing course with Vlad's explanation
Amazing work, thank you very much!!
That was extremely helpful! Thanks for the effort!