Udemy
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
  •  
Development
Web Development Data Science Mobile Development Programming Languages Game Development Database Design & Development Software Testing Software Engineering Development Tools No-Code Development
Business
Entrepreneurship Communications Management Sales Business Strategy Operations Project Management Business Law Business Analytics & Intelligence Human Resources Industry E-Commerce Media Real Estate Other Business
Finance & Accounting
Accounting & Bookkeeping Compliance Cryptocurrency & Blockchain Economics Finance Finance Cert & Exam Prep Financial Modeling & Analysis Investing & Trading Money Management Tools Taxes Other Finance & Accounting
IT & Software
IT Certification Network & Security Hardware Operating Systems Other IT & Software
Office Productivity
Microsoft Apple Google SAP Oracle Other Office Productivity
Personal Development
Personal Transformation Personal Productivity Leadership Career Development Parenting & Relationships Happiness Esoteric Practices Religion & Spirituality Personal Brand Building Creativity Influence Self Esteem & Confidence Stress Management Memory & Study Skills Motivation Other Personal Development
Design
Web Design Graphic Design & Illustration Design Tools User Experience Design Game Design Design Thinking 3D & Animation Fashion Design Architectural Design Interior Design Other Design
Marketing
Digital Marketing Search Engine Optimization Social Media Marketing Branding Marketing Fundamentals Marketing Analytics & Automation Public Relations Advertising Video & Mobile Marketing Content Marketing Growth Hacking Affiliate Marketing Product Marketing Other Marketing
Lifestyle
Arts & Crafts Beauty & Makeup Esoteric Practices Food & Beverage Gaming Home Improvement Pet Care & Training Travel Other Lifestyle
Photography & Video
Digital Photography Photography Portrait Photography Photography Tools Commercial Photography Video Design Other Photography & Video
Health & Fitness
Fitness General Health Sports Nutrition Yoga Mental Health Dieting Self Defense Safety & First Aid Dance Meditation Other Health & Fitness
Music
Instruments Music Production Music Fundamentals Vocal Music Techniques Music Software Other Music
Teaching & Academics
Engineering Humanities Math Science Online Education Social Science Language Teacher Training Test Prep Other Teaching & Academics
AWS Certification Microsoft Certification AWS Certified Solutions Architect - Associate AWS Certified Cloud Practitioner CompTIA A+ Cisco CCNA Amazon AWS CompTIA Security+ AWS Certified Developer - Associate
Graphic Design Photoshop Adobe Illustrator Drawing Digital Painting InDesign Character Design Canva Figure Drawing
Life Coach Training Neuro-Linguistic Programming Personal Development Mindfulness Personal Transformation Meditation Life Purpose Coaching Neuroscience
Web Development JavaScript React CSS Angular PHP WordPress Node.Js Python
Google Flutter Android Development iOS Development Swift React Native Dart Programming Language Mobile Development Kotlin SwiftUI
Digital Marketing Google Ads (Adwords) Social Media Marketing Google Ads (AdWords) Certification Marketing Strategy Internet Marketing YouTube Marketing Email Marketing Retargeting
SQL Microsoft Power BI Tableau Business Analysis Business Intelligence MySQL Data Analysis Data Modeling Data Science
Business Fundamentals Entrepreneurship Fundamentals Business Strategy Online Business Business Plan Startup Freelancing Blogging Home Business
Unity Game Development Fundamentals Unreal Engine C# 3D Game Development C++ 2D Game Development Unreal Engine Blueprints Blender
30-Day Money-Back Guarantee

This course includes:

  • 8.5 hours on-demand video
  • 26 articles
  • 4 downloadable resources
  • Full lifetime access
  • Access on mobile and TV
Development Web Development Node.Js

NestJS Zero to Hero - Modern TypeScript Back-end Development

Develop and deploy enterprise back-end applications following best practices using Node.js and TypeScript
Bestseller
Rating: 4.7 out of 54.7 (4,392 ratings)
72,897 students
Created by Ariel Weinberger
Last updated 5/2020
English
English [Auto], French [Auto], 
30-Day Money-Back Guarantee

What you'll learn

  • Becoming familiar with the NestJS framework and its components
  • Designing and developing REST APIs performing CRUD operations
  • Authentication and Authorization for back-end applications
  • Using TypeORM for database interaction
  • Security best practices, password hashing and storing sensitive information
  • Persisting data using a database
  • Deploying back-end applications at a production-ready state to Amazon Web Services
  • Writing clean, maintainable code in-line with industry standards
  • Utilising the NestJS Command Line Interface (CLI)
  • Using Postman for testing back-end services
  • Using pgAdmin as an interface tool to manage PostgreSQL databases
  • Implement efficient logging in a back-end application
  • Environment-based configuration management and environment variables
  • Implementing data validation and using Pipes
  • Guarding endpoints for authorized users using Guards
  • Modelling entities for the persistence layer
  • TypeScript best practices
  • Handling asynchronous operations using async-await
  • Using Data Transfer Objects (DTO)
  • Hands-on experience with JSON Web Tokens (JWT)
  • Unit testing NestJS applications
  • Using GraphQL with NestJS
  • Database persistence with MongoDB
Curated for the Udemy for Business collection

Course content

13 sections • 132 lectures • 8h 27m total length

  • Preview00:54
  • Thank you + Future Content
    01:33
  • What is NestJS?
    01:59
  • Installing Node.js and NPM
    00:10
  • Preview02:04
  • Installing Postman
    00:12
  • (Optional) Installing Visual Studio Code
    00:17

  • Preview05:34
  • Preview06:22
  • Preview02:24
  • Creating a Tasks Module
    02:43
  • Preview03:29
  • Creating a Tasks Controller
    03:08
  • Preview02:55
  • Creating a Tasks Service
    03:02
  • Feature: Getting all Tasks
    04:37
  • Preview04:13
  • Preview05:04
  • Preview05:14
  • Preview06:37
  • Creating a CreateTaskDto
    04:14
  • Feature: Getting a Task by ID
    04:24
  • Preview00:44
  • Solution: Deleting a Task
    05:23
  • Preview01:14
  • Solution: Updating a Task's Status
    04:42
  • Feature: Searching and Filtering Tasks
    09:27
  • Summary Quiz
    6 questions
  • NEW COURSE + DISCOUNT COUPON
    00:14

  • Introduction to NestJS Pipes
    04:58
  • ValidationPipe: Creating a Task
    03:27
  • Error Handling: Getting a non-existing Task
    03:02
  • Error Handling: Deleting a non-existing Task
    01:43
  • Custom Pipe: Validating the Task Status
    07:05
  • ValidationPipe: Task Filtering and Search
    03:25
  • Summary Quiz
    5 questions
  • Source Code - Validation and Error Handling
    00:08

  • Installing PostgreSQL and pgAdmin
    00:14
  • Using pgAdmin to create a Database
    01:51
  • Introduction to Object Relational Mapping and TypeORM
    02:48
  • IMPORTANT: TypeORM Entities Configuration
    00:12
  • Connecting NestJS to a database using TypeORM
    05:22
  • Creating a Task Entity
    01:41
  • Creating a Task Repository
    03:09
  • Preparation for Task Service Refactoring
    02:46
  • Persistence: Getting a Task by ID
    06:13
  • Persistence: Creating a Task
    06:38
  • Challenge: Delete Task Persistence
    01:47
  • Solution: Delete Task Persistence
    07:13
  • Persistence: Updating Task Status
    03:44
  • IMPORTANT: Before Persistence of Getting Tasks
    02:55
  • Persistence: Getting Tasks (with or without filters)
    09:37
  • Summary Quiz
    5 questions
  • Source Code - Data Persistence
    00:07

  • Setting up AuthModule, User Entity and UserRepository
    05:30
  • Feature: Sign Up
    08:53
  • Validation: AuthCredentialsDto, password strength
    04:26
  • Error Handling: Duplicate Usernames
    06:04
  • Security: Hashing Passwords & Using Salts
    08:53
  • Feature: Validating Password - Sign In
    08:32
  • Introduction to JSON Web Tokens (JWT)
    Preview05:01
  • Setting up the JWT Module and Passport.js
    03:39
  • Signing a JWT Token Upon Authentication
    04:43
  • Setting up the JWT Strategy for Authorization
    07:46
  • IMPORTANT: GetUser Decorator
    00:18
  • Custom @GetUser() Decorator
    02:50
  • Guarding the Tasks Routes (TasksController)
    02:16
  • Summary Quiz
    6 questions

  • Tasks and Users - Database Relation
    03:45
  • Authorization: Creating a Task For User
    04:15
  • Authorization: Getting Tasks For User
    05:27
  • Authorization: Getting a User's Task
    02:53
  • Authorization: Updating a User's Task Status
    01:29
  • Authorization: Deleting a User's Task
    02:16
  • Source Code - Authentication & Authorization
    00:07

  • Introduction to Logging
    02:31
  • Applying logging in our application
    12:44

  • Windows: Environment Variables
    00:14
  • Introduction to Configuration
    01:29
  • Configuration Management Set-up
    05:58
  • Applying Configuration - Codebase (Part 1)
    08:42
  • Source Code - Configuration
    00:07

  • Front-end Application Set-up (Development Mode)
    06:37

  • Signing up to Amazon Web Services and signing up
    01:01
  • Amazon S3: Setting up a Bucket (Front-end Hosting)
    04:50
  • Enabling CORS from the S3 Front-end Application
    03:02
  • IMPORTANT: bcryptjs NPM package
    00:18
  • TIP: Before Deploying to Production
    00:27
  • Pre-production package.json Adjustments
    01:37
  • IMPORTANT: Change in TypeORM Configuration
    00:27
  • Deploying NestJS to Elastic Beanstalk
    07:45
  • Uploading the Front-end App to S3
    03:12
  • Source Code - Deployment
    00:07

Requirements

  • Having a basic understanding of JavaScript and/or NodeJS
  • Having basic knowledge of TypeScript is recommended, but not required

Description

NestJS is a Node.js back-end development framework built upon Express, leveraging the power of TypeScript.

NestJS leverages the incredible popularity and robustness of JavaScript as a language and Node.js as a technology. It is inspired by common libraries and frameworks such as Angular, React and Vue which improve developer productivity and experience.

Even considering the amount of superb libraries, helpers and tools that exist for server-side Node.js, none of them effectively solve the main problem - the architecture of an application.

NestJS provides an out-of-the-box application architecture which allows developers and teams to create highly testable, scalable, loosely coupled and easily maintainable applications.


Recently, the NestJS framework is gaining extreme popularity due to its incredible features;

  • Leverages TypeScript - strongly typed language which is a super-set of JavaScript

  • Simple to use, easy to learn and easy to master

  • Powerful Command Line Interface (CLI) tool that boosts productivity and ease of development

  • Detailed, well-maintained documentation

  • Active codebase development and maintenance

  • Open-source (MIT license)

  • Supports dozens nest-specific modules that help you easily integrate with common technologies and concepts such as TypeORM, Mongoose, GraphQL, Logging, Validation, Caching, Websockets and much more

  • Easy of unit-testing applications

  • Made for Monoliths and Micro-services (entire section in the documentation regarding the Microservice type of a NestJS application, as well as techniques and recipes).

In this course I am going to guide you through the process of planning, developing and deploying a fully-featured back-end application, based on my experience developing and maintaining systems that support dozens of millions of concurrent users at scale.

Who this course is for:

  • Intermediate JavaScript developers who want to dive into back-end development
  • Any developers willing to apply TypeScript on the back-end
  • Developers eager to learn how to develop performant, secure and production-ready REST APIs following best practices
  • Developers who want to learn how to deploy their application to the cloud (Amazon Web Services)
  • Developers who want to follow building a practical, real-world application from zero to production

Featured review

Kiffin Gish
Kiffin Gish
28 courses
14 reviews
Rating: 5.0 out of 5a year ago
I learned pretty much everything I needed to know in order to get up and running with nestjs really quickly. The wide coverage of testing was especially useful. Roles and migrations would have been nice.

Instructor

Ariel Weinberger
Engineering Manager, Mentor
Ariel Weinberger
  • 4.7 Instructor Rating
  • 5,567 Reviews
  • 111,179 Students
  • 2 Courses

I am a passionate Software Engineer with years of experience in front- and back-end development.

Currently, I work as aa Software Engineering Manager at OneFit. Previously, Senior Software Engineer at DAZN, delivering service at scale to dozens of millions of concurrent users all across the globe.

Past experience working in the Financial Technology (FinTech) sector for Payconiq, where I had to develop and maintain key systems for the smooth operation of the BeNeLux payment solution, handling lots of concurrent payments at a time.

I also worked as an engineer for the defense industry, mainly around air intelligence VISINT (Visual Intelligence) systems mounted on airplanes.

Apart from that, I have always been a fan of teaching and mentorship. I have mentored countless mentees in software engineering - guiding, coaching and setting them up for success as an engineer.

I have profiles on several mentorship platforms where I maintain a solid 5-star rating.

  • Udemy for Business
  • Teach on Udemy
  • Get the app
  • About us
  • Contact us
  • Careers
  • Blog
  • Help and Support
  • Affiliate
  • Terms
  • Privacy policy
  • Cookie settings
  • Sitemap
  • Featured courses
Udemy
© 2021 Udemy, Inc.