Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tkssharma/nestjs-course-2024
nestjs-course-2024
https://github.com/tkssharma/nestjs-course-2024
nestjs nestjs-backend nestjs-module nestjs-mongoose nestjs-postgres typeorm
Last synced: 3 months ago
JSON representation
nestjs-course-2024
- Host: GitHub
- URL: https://github.com/tkssharma/nestjs-course-2024
- Owner: tkssharma
- Created: 2024-08-27T23:11:32.000Z (5 months ago)
- Default Branch: develop
- Last Pushed: 2024-09-22T18:47:47.000Z (4 months ago)
- Last Synced: 2024-10-02T05:04:40.712Z (3 months ago)
- Topics: nestjs, nestjs-backend, nestjs-module, nestjs-mongoose, nestjs-postgres, typeorm
- Language: TypeScript
- Homepage: https://www.youtube.com/watch?v=9MVSRXe3iMQ&list=PLU-FndeNRY4DtRToRKmYF8qrZgQqzsnNR
- Size: 252 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
![](https://cdn.hashnode.com/res/hashnode/image/upload/v1724805067661/67f02611-e0ff-4ea0-beaf-0f7d9e7fde39.jpeg)
### [](#heading-00-introduction "")00 Introduction
Why Nestjs
* nestjs and express side by side
* nestjs IOC and Typescript
* Nestjs decorators
* NestJS with Integrations
* Nestjs why should i choose it !### [](#heading-controller-and-services-building-blocks "")controller and services (building blocks)
* Installing Node.js and Yarn
* Installing the NestJS CLI
* (Optional) Installing VSCode and Extensions
* Creating our project via the NestJS CLI
* Creating a Tasks Module
* Creating at Tasks Controller
* Creating a Tasks Service
* Defining a Task Model
* Feature Creating a Task (Part - Controller)
* Feature Creating a Task (Part - Service)
* Implementing CreateTaskDto
* Feature Getting a Task by ID
* CRUD APIs
* Feature Searching and Filtering### [](#heading-02-validation-and-pipes-building-blocks "")02 validation and pipes (building blocks)
* ValidationPipe Creating a Task
* Error Handling Deleting a non-existing Task-
* Validation Update Task Status
* Challenge Validating Task Filtering and Search### [](#heading-03-exception-filters-and-middleware-all-building-blocks "")03 exception filters and middleware (all building blocks)
* Controllers with task api
* Providers with task crud apis
* Modules with task crud apis
* Middleware with task crud apis
* Exception filters with task crud apis
* Pipes with task crud apis
* Guards with task crud apis
* Interceptors with task crud apis
* Custom decorators with task crud apis
* create middleware with task crud apis
* apply middleware on routes
* exclude routes from middleware
* Validating Task Filtering and Search### [](#heading-04-apply-all-learning-in-demo "")04 Apply all Learning in Demo
* Create students apis
* Use IN-memory database
* CRUD APIs with swagger specs
* Payload validation using DTO Validation
* Apply Middleware on Private Routes
* Create a Mock Login APIs with Token in Auth Header
* Apply Guards on Private Route
* Add exception Filter on Response Payload
* Custom payload data validation using class validator
* Adding services and dao layer
* How to import export and share modules
* Code structure of any basic nestjs application
* Creating routing using controllers
* Using swagger tags to exose api specs
* Using REST API client to test apis
* Creating Modules and share Modules
* Understanding DI Framework
* Understand IOC Container### [](#heading-05-data-store-with-orm "")05 Data store with ORM
- Introduction to Persistence
- Installing Docker and pgAdmin
- Running PostgreSQL via Docker
- Setting up pgAdmin
- Creating a Database using pgAdmin
- Introduction to TypeORM Setting up a Database Connection
- Creating a Task Entity Active Record VS Data Mapper Patterns
- Creaing a Tasks Repository Refactoring for Tasks Service
- Persistence Getting a Task by ID Persistence
- Creating a Task (Challenge) Persistence Deleting a Task (Solution)
- Persistence Deleting a Task Persistence Update Task Status
- Small Change Needed Persistence Getting All Tasks### [](#heading-06-different-orm-and-migrations "")06 Different ORM and Migrations
* Food Delivery APIs with different ORM
* Prisma
* Sequelize
* Mongoose
* TypeORM### [](#heading-07-data-store-with-prismamongoosesequelize "")07 Data store with Prisma/Mongoose/Sequelize
Food Delivery APIs with Prisma Prisma and Migration Creating Prism Models Building APIs with Prisma Building Controller and services Building Prisma schema with postgres Building APIs with Prisma client apis
### [](#heading-08-intro-to-authentication-and-authorization "")08 Intro to Authentication and Authorization
* Cookies based auth
* session based auth
* jwt token based auth- Setting up AuthModule,
- User Entity and User Repository Feature
- Signing Up Validation
- Credentials and Password Strength
- Error Handling Username Conflicts
- Securely Storing Passwords Password
- Hashing With Bcrypt Feature Signing In
- Setting up the JWT Module and Passport.js
- Signing a JWT Token on Sign In (Authentication)
- Implementing JWT Validation Custom
- Decorator Guarding the Tasks Routes### [](#heading-09-database-relationship "")09 Database relationship
* Food Delivery APIs with TypeORM
* Managing relationship in tables
* define relationships in typeorm entities
* build apis using typeorm
* add auth and authz created in above videos
* add middeleare and auth guards
* add filters and interceptors